<SEC-DOCUMENT>0001811884-22-000004.txt : 20220325
<SEC-HEADER>0001811884-22-000004.hdr.sgml : 20220325
<ACCEPTANCE-DATETIME>20220325155400
ACCESSION NUMBER:		0001811884-22-000004
CONFORMED SUBMISSION TYPE:	10-K
PUBLIC DOCUMENT COUNT:		121
CONFORMED PERIOD OF REPORT:	20211231
FILED AS OF DATE:		20220325
DATE AS OF CHANGE:		20220325

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			UTAH MEDICAL PRODUCTS INC
		CENTRAL INDEX KEY:			0000706698
		STANDARD INDUSTRIAL CLASSIFICATION:	SURGICAL & MEDICAL INSTRUMENTS & APPARATUS [3841]
		IRS NUMBER:				870342734
		STATE OF INCORPORATION:			UT
		FISCAL YEAR END:			1231

	FILING VALUES:
		FORM TYPE:		10-K
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	001-12575
		FILM NUMBER:		22771226

	BUSINESS ADDRESS:	
		STREET 1:		7043 S 300 WEST
		CITY:			MIDVALE
		STATE:			UT
		ZIP:			84047
		BUSINESS PHONE:		8015661200
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-K
<SEQUENCE>1
<FILENAME>utmd-20211231.htm
<DESCRIPTION>UTAH MEDICAL PRODUCTS INC - FORM 10-K SEC FILING
<TEXT>
<XBRL>
<?xml version='1.0' encoding='us-ascii' standalone='no'?>
<html xmlns='http://www.w3.org/1999/xhtml' xmlns:xbrli='http://www.xbrl.org/2003/instance' xmlns:us-gaap='http://fasb.org/us-gaap/2021-01-31' xmlns:srt='http://fasb.org/srt/2021-01-31' xmlns:dtr-types='http://www.xbrl.org/dtr/type/2020-01-21' xmlns:country='http://xbrl.sec.gov/country/2021' xmlns:dei='http://xbrl.sec.gov/dei/2021q4' xmlns:fil='http://www.utahmed.com/20211231' xmlns:i='http://www.xbrl.org/2003/instance' xmlns:xbrldi='http://xbrl.org/2006/xbrldi' xmlns:iso4217='http://www.xbrl.org/2003/iso4217' xmlns:ix='http://www.xbrl.org/2013/inlineXBRL' xmlns:ixt='http://www.xbrl.org/inlineXBRL/transformation/2015-02-26' xmlns:ixt-sec='http://www.sec.gov/inlineXBRL/transformation/2015-08-31' xmlns:utr='http://www.xbrl.org/2009/utr' xmlns:link='http://www.xbrl.org/2003/linkbase' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
<head>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<title>UTAH MEDICAL PRODUCTS INC - Form 10-K SEC filing</title>
<meta content='text/html; charset=UTF-8' http-equiv='Content-Type' />
</head>
<body>
<div style='display:none'>
<ix:header>
<ix:hidden>
<ix:nonNumeric name='dei:EntityCentralIndexKey' contextRef='Y21' id='fact1'>0000706698</ix:nonNumeric>
<ix:nonNumeric name='dei:AmendmentFlag' contextRef='Y21' id='fact2'>false</ix:nonNumeric>
<ix:nonNumeric name='dei:DocumentFiscalYearFocus' contextRef='Y21' id='fact3'>2021</ix:nonNumeric>
<ix:nonNumeric name='dei:DocumentFiscalPeriodFocus' contextRef='Y21' id='fact4'>FY</ix:nonNumeric>
<ix:nonNumeric name='us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList' contextRef='E21' id='fact5'>http://fasb.org/us-gaap/2021-01-31#PropertyPlantAndEquipmentNet</ix:nonNumeric>
<ix:nonNumeric name='us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList' contextRef='E20' id='fact6'>http://fasb.org/us-gaap/2021-01-31#PropertyPlantAndEquipmentNet</ix:nonNumeric>
<ix:nonNumeric name='us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList' contextRef='E21' id='fact7'>http://fasb.org/us-gaap/2021-01-31#AccruedLiabilitiesCurrent</ix:nonNumeric>
</ix:hidden>
<ix:references>
<link:schemaRef xlink:arcrole='http://www.xbrl.org/2003/linkbase' xlink:href='utmd-20211231.xsd' xlink:type='simple'/>
</ix:references>
<ix:resources>
<i:context id='Y21'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='E21'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E21Q2'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:instant>2021-06-30</i:instant>
</i:period>
</i:context>
<i:context id='I220324'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:instant>2022-03-24</i:instant>
</i:period>
</i:context>
<i:context id='D211231'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2021-12-31</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='E20'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:instant>2020-12-31</i:instant>
</i:period>
</i:context>
<i:context id='Y20'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='E19'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:instant>2019-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E18'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:instant>2018-12-31</i:instant>
</i:period>
</i:context>
<i:context id='Y21_StEqComps-CommonStock'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_StEqComps-AddPaidInCap'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_StEqComps-ComprIncome'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_StEqComps-RetainedEarnings'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='E18_StEqComps-CommonStock'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2018-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E18_StEqComps-AddPaidInCap'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2018-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E18_StEqComps-ComprIncome'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2018-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E18_StEqComps-RetainedEarnings'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2018-12-31</i:instant>
</i:period>
</i:context>
<i:context id='Y19_StEqComps-CommonStock'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_StEqComps-AddPaidInCap'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_StEqComps-ComprIncome'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_StEqComps-RetainedEarnings'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='E19_StEqComps-CommonStock'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2019-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E19_StEqComps-AddPaidInCap'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2019-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E19_StEqComps-ComprIncome'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2019-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E19_StEqComps-RetainedEarnings'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2019-12-31</i:instant>
</i:period>
</i:context>
<i:context id='Y20_StEqComps-CommonStock'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_StEqComps-AddPaidInCap'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_StEqComps-ComprIncome'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_StEqComps-RetainedEarnings'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='E20_StEqComps-CommonStock'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2020-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E20_StEqComps-AddPaidInCap'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2020-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E20_StEqComps-ComprIncome'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2020-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E20_StEqComps-RetainedEarnings'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2020-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E21_StEqComps-CommonStock'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:CommonStockMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E21_StEqComps-AddPaidInCap'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E21_StEqComps-ComprIncome'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E21_StEqComps-RetainedEarnings'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='us-gaap:StatementEquityComponentsAxis'>us-gaap:RetainedEarningsMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='Y21_Range-Minimum_PpeByType-BuildingAndBuildingImprovements'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:RangeAxis'>srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='us-gaap:PropertyPlantAndEquipmentByTypeAxis'>us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_Range-Maximum_PpeByType-BuildingAndBuildingImprovements'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:RangeAxis'>srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='us-gaap:PropertyPlantAndEquipmentByTypeAxis'>us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_Range-Minimum_PpeByType-Equipment'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:RangeAxis'>srt:MinimumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='us-gaap:PropertyPlantAndEquipmentByTypeAxis'>us-gaap:EquipmentMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_Range-Maximum_PpeByType-Equipment'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:RangeAxis'>srt:MaximumMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='us-gaap:PropertyPlantAndEquipmentByTypeAxis'>us-gaap:EquipmentMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_Range-Minimum'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:RangeAxis'>srt:MinimumMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_Range-Maximum'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:RangeAxis'>srt:MaximumMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19Q1_DistributionRightsAcquisition-CoopersurgicalInc'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='fil:DistributionRightsAcquisitionAxis'>fil:CoopersurgicalIncMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-03-31</i:endDate>
</i:period>
</i:context>
<i:context id='E21_DistributionRightsAcquisition-CoopersurgicalInc'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='fil:DistributionRightsAcquisitionAxis'>fil:CoopersurgicalIncMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='Y21Q1'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-03-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21Q2'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2021-04-01</i:startDate>
<i:endDate>2021-06-30</i:endDate>
</i:period>
</i:context>
<i:context id='Y21Q3'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2021-07-01</i:startDate>
<i:endDate>2021-09-30</i:endDate>
</i:period>
</i:context>
<i:context id='Y21Q4'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2021-10-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20Q1'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-03-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20Q2'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2020-04-01</i:startDate>
<i:endDate>2020-06-30</i:endDate>
</i:period>
</i:context>
<i:context id='Y20Q3'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2020-07-01</i:startDate>
<i:endDate>2020-09-30</i:endDate>
</i:period>
</i:context>
<i:context id='Y20Q4'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2020-10-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19Q1'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-03-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19Q2'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2019-04-01</i:startDate>
<i:endDate>2019-06-30</i:endDate>
</i:period>
</i:context>
<i:context id='Y19Q3'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2019-07-01</i:startDate>
<i:endDate>2019-09-30</i:endDate>
</i:period>
</i:context>
<i:context id='Y19Q4'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
</i:entity>
<i:period>
<i:startDate>2019-10-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='E21_StGeo-U.S.AndCanada'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:U.S.AndCanadaMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E21_StGeo-EnglandAndAustralia'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:EnglandAndAustraliaMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E21_StGeo-IE'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>country:IE</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E20_StGeo-U.S.AndCanada'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:U.S.AndCanadaMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2020-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E20_StGeo-EnglandAndAustralia'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:EnglandAndAustraliaMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2020-12-31</i:instant>
</i:period>
</i:context>
<i:context id='E20_StGeo-IE'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>country:IE</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2020-12-31</i:instant>
</i:period>
</i:context>
<i:context id='Y21_StScenario-Range1'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementScenarioAxis'>fil:Range1Member</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='E21_StScenario-Range1'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementScenarioAxis'>fil:Range1Member</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='Y21_StScenario-Range2'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementScenarioAxis'>fil:Range2Member</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='E21_StScenario-Range2'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementScenarioAxis'>fil:Range2Member</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:instant>2021-12-31</i:instant>
</i:period>
</i:context>
<i:context id='Y21_ProductOrService-Obstetrics_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:ObstetricsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_ProductOrService-Obstetrics_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:ObstetricsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_ProductOrService-Obstetrics_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:ObstetricsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_ProductOrService-Neonatal_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:NeonatalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_ProductOrService-Neonatal_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:NeonatalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_ProductOrService-Neonatal_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:NeonatalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_StGeo-Global'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:GlobalMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_ProductOrService-Obstetrics_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:ObstetricsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_ProductOrService-Obstetrics_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:ObstetricsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_ProductOrService-Obstetrics_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:ObstetricsMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_ProductOrService-Neonatal_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:NeonatalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_ProductOrService-Neonatal_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:NeonatalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_ProductOrService-Neonatal_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:NeonatalMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:ProductOrServiceAxis'>fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y20_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2020-01-01</i:startDate>
<i:endDate>2020-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y19_StGeo-Ous'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='srt:StatementGeographicalAxis'>fil:OusMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2019-01-01</i:startDate>
<i:endDate>2019-12-31</i:endDate>
</i:period>
</i:context>
<i:context id='Y21_DistributionRightsAcquisition-CoopersurgicalInc'>
<i:entity>
<i:identifier scheme='http://www.sec.gov/CIK'>0000706698</i:identifier>
<i:segment><xbrldi:explicitMember dimension='fil:DistributionRightsAcquisitionAxis'>fil:CoopersurgicalIncMember</xbrldi:explicitMember></i:segment>
</i:entity>
<i:period>
<i:startDate>2021-01-01</i:startDate>
<i:endDate>2021-12-31</i:endDate>
</i:period>
</i:context>
<i:unit id='Pure'>
<i:measure>xbrli:pure</i:measure>
</i:unit>
<i:unit id='USD'>
<i:measure>iso4217:USD</i:measure>
</i:unit>
<i:unit id='Shares'>
<i:measure>xbrli:shares</i:measure>
</i:unit>
<i:unit id='UsdPerShare'>
<i:divide>
<i:unitNumerator>
<i:measure>iso4217:USD</i:measure>
</i:unitNumerator>
<i:unitDenominator>
<i:measure>xbrli:shares</i:measure>
</i:unitDenominator>
</i:divide>
</i:unit>
</ix:resources>
</ix:header>
</div>
<div><p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-2pt;text-align:center'><b>UNITED STATES </b></p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-2pt;text-align:center'><b>SECURITIES AND EXCHANGE COMMISSION</b></p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'><b>Washington, D.C. &#160;20549</b></p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'><b>FORM </b><ix:nonNumeric name='dei:DocumentType' contextRef='Y21' escape='true'>10-K</ix:nonNumeric></p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0'><span style='font-family:MS Gothic'><ix:nonNumeric name='dei:DocumentAnnualReport' contextRef='Y21' format='ixt-sec:boolballotbox'>&#9746;</ix:nonNumeric></span> &#160;&#160;&#160;&#160;<b>ANNUAL REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</b></p>
</td></tr>
<tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>For the fiscal year ended <ix:nonNumeric name='dei:DocumentPeriodEndDate' contextRef='Y21' format='ixt:datemonthdayyearen'> <ix:nonNumeric name='dei:CurrentFiscalYearEndDate' contextRef='Y21' format='ixt:datemonthdayen'>December 31</ix:nonNumeric>, 2021</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>OR</p>
</td></tr>
<tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0'><span style='font-family:MS Gothic'><ix:nonNumeric name='dei:DocumentTransitionReport' contextRef='Y21' format='ixt-sec:boolballotbox'>&#9744;</ix:nonNumeric></span> &#160;&#160;&#160;&#160;<b>TRANSITION REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934</b></p>
</td></tr>
<tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>For the transition period from &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;to</p>
</td></tr>
<tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Commission File No. <span style='border-bottom:1px solid #000000'><b><ix:nonNumeric name='dei:EntityFileNumber' contextRef='Y21' escape='true'>001-12575</ix:nonNumeric></b></span></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'><b><ix:nonNumeric name='dei:EntityRegistrantName' contextRef='Y21' escape='true'>UTAH MEDICAL PRODUCTS INC</ix:nonNumeric></b></span></p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'>(Exact name of Registrant as specified in its charter)</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'><b><ix:nonNumeric name='dei:EntityIncorporationStateCountryCode' contextRef='Y21' format='ixt-sec:stateprovnameen'>Utah</ix:nonNumeric></b></span></p>
</td><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='dei:EntityTaxIdentificationNumber' contextRef='Y21' escape='true'>87-0342734</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>(State or other jurisdiction of incorporation or organization)</p>
</td><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>(I.R.S. Employer&#160;Identification No.)</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><b><ix:nonNumeric name='dei:EntityAddressAddressLine1' contextRef='Y21' escape='true'>7043 South 300 West</ix:nonNumeric></b></p>
</td></tr>
<tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'><b><ix:nonNumeric name='dei:EntityAddressCityOrTown' contextRef='Y21' escape='true'>Midvale</ix:nonNumeric></b>, <b><ix:nonNumeric name='dei:EntityAddressStateOrProvince' contextRef='Y21' format='ixt-sec:stateprovnameen'>Utah</ix:nonNumeric></b> &#160;<b><ix:nonNumeric name='dei:EntityAddressPostalZipCode' contextRef='Y21' escape='true'>84047</ix:nonNumeric></b></span></p>
</td></tr>
<tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>(Address of principal executive offices) (Zip Code)</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>(<b><ix:nonNumeric name='dei:CityAreaCode' contextRef='Y21' escape='true'>801</ix:nonNumeric></b>) </span><ix:nonNumeric name='dei:LocalPhoneNumber' contextRef='Y21' escape='true'>566-1200</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>(Registrant&#8217;s telephone number, including area code)</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0'>Securities registered pursuant to Section 12(b) of the Act:</p>
</td><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:33.32%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:33.32%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Title of each class:</p>
</td><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Trading Symbol:</p>
</td><td valign='top' style='width:33.32%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Name of each exchange on which registered:</p>
</td></tr>
<tr><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><b><ix:nonNumeric name='dei:Security12bTitle' contextRef='Y21' escape='true'>Common stock, $0.01 par value</ix:nonNumeric></b></p>
</td><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><b><ix:nonNumeric name='dei:TradingSymbol' contextRef='Y21' escape='true'>UTMD</ix:nonNumeric></b></p>
</td><td valign='top' style='width:33.32%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><b><ix:nonNumeric name='dei:SecurityExchangeName' contextRef='Y21' escape='true'>NASDAQ</ix:nonNumeric></b></p>
</td></tr>
<tr><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:33.32%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0'>Securities registered pursuant to Section 12(g) of the Act: <b>None</b></p>
</td><td valign='top' style='width:33.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:33.32%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:18pt'></kbd>Indicate by check mark if the registrant is a well-known seasoned issuer, as defined in Rule 405 of the Securities Act. &#160;&#160;Yes&#160;<span style='font-family:MS Gothic'>&#9744;</span> &#160;&#160;<ix:nonNumeric name='dei:EntityWellKnownSeasonedIssuer' contextRef='Y21' escape='true'>No</ix:nonNumeric>&#160;<span style='font-family:MS Gothic'>&#9746;</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:18pt'></kbd>Indicate by check mark if the registrant is not required to file reports pursuant to Section 13 or 15(d) of the Act. &#160;&#160;Yes&#160;<span style='font-family:MS Gothic'>&#9744;</span> &#160;&#160;<ix:nonNumeric name='dei:EntityVoluntaryFilers' contextRef='Y21' escape='true'>No</ix:nonNumeric>&#160;<span style='font-family:MS Gothic'>&#9746;</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:18pt'></kbd>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. &#160;&#160;<ix:nonNumeric name='dei:EntityCurrentReportingStatus' contextRef='Y21' escape='true'>Yes</ix:nonNumeric>&#160;<span style='font-family:MS Gothic'>&#9746;</span> &#160;&#160;No&#160;<span style='font-family:MS Gothic'>&#9744;</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:18pt'></kbd>Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (&#167;232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files). &#160;&#160;<ix:nonNumeric name='dei:EntityInteractiveDataCurrent' contextRef='Y21' escape='true'>Yes</ix:nonNumeric>&#160;<span style='font-family:MS Gothic'>&#9746;</span> &#160;&#160;No&#160;<span style='font-family:MS Gothic'>&#9744;</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-align:justify'><kbd style='margin-left:18pt'></kbd>Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a 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 12b-2 of the Exchange Act. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-align:justify'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0'>Large accelerated filer&#160;<span style='font-family:MS Gothic'>&#9744;</span></p>
</td><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0'>Accelerated filer&#160;<span style='font-family:MS Gothic'>&#9744;</span></p>
</td></tr>
<tr><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0'><ix:nonNumeric name='dei:EntityFilerCategory' contextRef='Y21' format='ixt-sec:entityfilercategoryen'>Non-accelerated filer</ix:nonNumeric> <span style='font-family:MS Gothic'>&#9746;</span></p>
</td><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0'>Smaller reporting company <span style='font-family:MS Gothic'><ix:nonNumeric name='dei:EntitySmallBusiness' contextRef='Y21' format='ixt-sec:boolballotbox'>&#9746;</ix:nonNumeric></span></p>
</td></tr>
<tr><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:50%'><p style='font:10pt Times New Roman;margin:0'>Emerging growth company <span style='font-family:MS Gothic'><ix:nonNumeric name='dei:EntityEmergingGrowthCompany' contextRef='Y21' format='ixt-sec:boolballotbox'>&#9744;</ix:nonNumeric></span></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:18pt'></kbd>If an emerging growth company, indicate by check mark 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. &#160;<span style='font-family:MS Gothic'>&#9744;</span> &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:18pt'></kbd>Indicate by check mark whether the registrant has filed a report on and attestation to its management&#8217;s assessment of the effectiveness of its internal control over financial reporting under Section 404(b) of the Sarbanes-Oxley Act (15 U.S.C. 7262(b)) by the registered public accounting firm that prepared or issued its audit report. Yes &#160;<span style='font-family:MS Gothic'><ix:nonNumeric name='dei:IcfrAuditorAttestationFlag' contextRef='Y21' format='ixt-sec:boolballotbox'>&#9744;</ix:nonNumeric></span> &#160;&#160;&#160;No <span style='font-family:MS Gothic'>&#9746;</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:18pt'></kbd>Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act). &#160;Yes&#160;<span style='font-family:MS Gothic'><ix:nonNumeric name='dei:EntityShellCompany' contextRef='Y21' format='ixt-sec:boolballotbox'>&#9744;</ix:nonNumeric></span> &#160;&#160;No&#160;<span style='font-family:MS Gothic'>&#9746;</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:18pt'></kbd>State the aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant&#8217;s most recently completed second fiscal quarter. &#160;As of June 30, 2021, the aggregate market value of the voting and nonvoting common equity held by non-affiliates of the registrant was <b>$<ix:nonFraction name='dei:EntityPublicFloat' contextRef='E21Q2' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>286,135,700</ix:nonFraction></b>.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:18pt'></kbd>Indicate the number of shares outstanding of each of the registrant&#8217;s classes of common stock, as of the latest practicable date. &#160;<b>As of March 24, 2022, common shares outstanding are <ix:nonFraction name='dei:EntityCommonStockSharesOutstanding' contextRef='I220324' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>3,654,987</ix:nonFraction>.</b>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><b>DOCUMENTS INCORPORATED BY REFERENCE</b></p>
</td></tr>
<tr><td valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><b><ix:nonNumeric name='dei:DocumentsIncorporatedByReferenceTextBlock' contextRef='Y21' escape='true'>The Company&#8217;s definitive proxy statement for the Annual Meeting of Stockholders is incorporated by reference into Part III, Item 10, 11, 12, 13 and 14 of this Form 10-K.</ix:nonNumeric></b></p>
</td></tr>
</table>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;color:#800000'></p>
<a id='a1'></a><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>INDEX TO FORM 10-K</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>PAGE</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a4' style='text-decoration:none'>PART I</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a5' style='text-decoration:none'>Item 1</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a5' style='text-decoration:none'>Business</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>1</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a6' style='text-decoration:none'>Item 1A</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a6' style='text-decoration:none'>Risk Factors</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>15</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a7' style='text-decoration:none'>Item 1B</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a7' style='text-decoration:none'>Unresolved Staff Comments</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>17</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr style='height:11.5pt'><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a8' style='text-decoration:none'>Item 2</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a8' style='text-decoration:none'>Properties</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>17</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a9' style='text-decoration:none'>Item 3</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a9' style='text-decoration:none'>Legal Proceedings</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>17</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a10' style='text-decoration:none'>Item 4</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a10' style='text-decoration:none'>Reserved</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>17</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a11' style='text-decoration:none'>PART II</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a12' style='text-decoration:none'>Item 5</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a12' style='text-decoration:none'>Market for Registrant&#8217;s Common Equity, Related Stockholder Matters and Issuer Purchases of Equity Securities</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>18</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a13' style='text-decoration:none'>Item 6</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a13' style='text-decoration:none'>Selected Financial Data</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>19</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a14' style='text-decoration:none'>Item 7</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a14' style='text-decoration:none'>Management&#8217;s Discussion and Analysis of Financial Condition and Results of Operations</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>20</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a15' style='text-decoration:none'>Item 7A</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a15' style='text-decoration:none'>Quantitative and Qualitative Disclosures About Market Risk</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>35</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a16' style='text-decoration:none'>Item 8</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a16' style='text-decoration:none'>Financial Statements and Supplementary Data</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>35</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a17' style='text-decoration:none'>Item 9</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a17' style='text-decoration:none'>Changes in and Disagreements With Accountants on Accounting and &#160;Financial Disclosure</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>54</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a18' style='text-decoration:none'>Item 9A</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a18' style='text-decoration:none'>Controls and Procedures</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>54</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a19' style='text-decoration:none'>Item 9B</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a19' style='text-decoration:none'>Other Information</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>54</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a20' style='text-decoration:none'>PART III</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a21' style='text-decoration:none'>Item 10</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a21' style='text-decoration:none'>Directors, Executive Officers and Corporate Governance</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>55</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a22' style='text-decoration:none'>Item 11</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a22' style='text-decoration:none'>Executive Compensation</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>55</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a23' style='text-decoration:none'>Item 12</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a23' style='text-decoration:none'>Security Ownership of Certain Beneficial Owners and Management and Related Stockholder Matters</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>55</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a24' style='text-decoration:none'>Item 13</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a24' style='text-decoration:none'>Certain Relationships and Related Transactions, and Director Independence</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>55</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a25' style='text-decoration:none'>Item 14</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a25' style='text-decoration:none'>Principal Accounting Fees and Services</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>55</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a26' style='text-decoration:none'>PART IV</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a27' style='text-decoration:none'>Item 15</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a27' style='text-decoration:none'>Exhibits, Financial Statement Schedules</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>56</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Dutch801SWC;margin:0;text-align:center'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a28' style='text-decoration:none'>Item 1</a><a href='#a28' style='text-decoration:none'>6</a></span></p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a28' style='text-decoration:none'>Form 10-K Summary</a></span></p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>56</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:19.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:19.12%'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a30' style='text-decoration:none'>SIGNATURES</a></span></p>
</td><td valign='top' style='width:68.16%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:12.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>57</p>
</td></tr>
</table>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a4'></a><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'><b>PART I</b></span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a5'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 1 &#8211;&#160;BUSINESS</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Currency amounts throughout this report are in thousands except per-share amounts and where noted.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Utah Medical Products, Inc. (&#8220;UTMD&#8221; or &#8220;the Company&#8221;) is in the business of producing high quality cost- effective medical devices that are predominantly differentiated by safety and improved patient outcomes. &#160;Throughout this report, &#8220;the Company&#8221; refers jointly to Utah Medical Products, Inc. and all of its subsidiaries. &#160;&#160;&#160;Success depends on 1) recognizing and responding to needs of clinicians and patients, 2) rapidly designing or acquiring economical solutions that gain premarketing regulatory concurrence, 3) reliably producing devices that meet those clinical needs, and then 4) selling through&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:31.5pt'><kbd style='position:absolute;font:10pt Dutch801SWC;margin-left:-24.3pt'>a)</kbd>UTMD's own direct channels into markets where the Company enjoys an established reputation and has a critical mass of sales and support resources, or&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:31.5pt'><kbd style='position:absolute;font:10pt Dutch801SWC;margin-left:-24.3pt'>b)</kbd>relationship with other medical companies that have the resources to effectively distribute and support the Company's products.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD's success in providing reliable solutions comes from its proven ability to integrate a number of engineering and technical disciplines in electronics, software, mechanical assembly and packaging, instrumentation, plastics processing and materials. &#160;&#160;The resulting differentiated devices represent significant incremental improvements in patient safety, clinical outcomes and/or total cost over preexisting clinical tools. UTMD's experience is that, in the case of labor-saving devices, the improvement in cost-effectiveness of clinical procedures also leads to an improvement in overall healthcare including lower risk of complications. &#160;UTMD markets a broad range of medical devices used in critical care areas, especially the neonatal intensive care unit (NICU), the labor and delivery (L&amp;D) department and the women&#8217;s health center in hospitals, as well as medical devices sold to outpatient clinics and physician's offices.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The opportunity to apply solutions to recognized needs results from an excellent core of practicing clinicians who introduce ideas to the Company, and key employees who are both clinical applications savvy and development engineering adept.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Domestically, UTMD&#8217;s medical devices are sold directly to clinical end-user facilities or a designated stocking distributor for a medical facility. &#160;In addition, some of UTMD&#8217;s devices are sold through specialty distributors, national hospital distribution companies and other medical device manufacturers. &#160;Outside the U.S. (OUS), devices are sold directly to end-users in Canada, the United Kingdom (UK), France, Ireland, Australia and New Zealand (NZ), through other medical device companies and through independent medical products distributors in many other countries. UTMD has representation globally in the major developed countries as well as many underdeveloped countries through more than 220 distributors, 115 of which purchased at least five thousand dollars in UTMD medical devices during 2021.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD was formed as a Utah corporation in 1978. &#160;UTMD sold stock to the public one time in 1982 for $1,750 (before offering costs of $321). &#160;Since 1992, UTMD has returned $125 million in the form of share repurchases, and an additional $73 million in cash dividends, to its public stockholders. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:10.8pt'></kbd>Utah Medical Products Ltd., a wholly-owned subsidiary with manufacturing located in Ireland, was formed in 1995 to better serve UTMD&#8217;s OUS customers. In 1997, UTMD purchased Columbia Medical, Inc. (CMI), a company specializing in silicone injection molding, assembly and marketing vacuum-assisted obstetrical delivery systems. &#160;In 1998, UTMD acquired the neonatal product line of Gesco International, a subsidiary of Bard Access Systems and C.R. Bard, Inc. &#160;In 2004, UTMD acquired Abcorp, Inc., its supplier of fetal monitoring belts. &#160;In 2011, UTMD purchased all of the common shares of Femcare Holdings Ltd (Femcare) of the United Kingdom, and its subsidiaries including Femcare Australia Pty Ltd as a sales and distribution operation to directly serve Australia medical facilities. The addition of Femcare provided product and distribution channel diversification and expansion. &#160;Sales of the products, or derivatives of the products, from the four acquisitions noted above, comprised 51% of UTMD&#8217;s consolidated 2021 sales. &#160;In late 2016, UTMD formed Utah Medical Products Canada Ltd (dba Femcare Canada) as a sales and distribution operation to directly serve Canadian medical facilities. In 2017, UTMD&#8217;s UK subsidiary began to distribute its devices directly to medical facilities in France. In early 2019, UTMD acquired the remaining life of Femcare&#8217;s exclusive U.S. distribution agreement for the Filshie Clip System from CooperSurgical Inc. &#160;In late 2020, UTMD&#8217;s Australia subsidiary incorporated a New Zealand subsidiary in order to distribute devices directly to medical facilities in New Zealand. &#160;In 2021, due to BREXIT, Utah Medical Products Ltd in Ireland began distributing devices directly to medical facilities in France in lieu of the UK. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD's corporate headquarters are located at 7043 South 300 West, Midvale, Utah 84047 USA. &#160;The corporate office telephone number is 01 (801) 566-1200. &#160;Ireland operations are located at Athlone Business and Technology Park, Athlone, County Westmeath, Ireland. &#160;The Ireland telephone number is 353 (90) 647-3932. &#160;United Kingdom operations are located at 32 Premier Way, Romsey, Hampshire SO51 9DQ, United Kingdom. &#160;The UK phone number is 44 (1794) 525 100. &#160;Australia operations are located at Unit 12, 5 Gladstone Road, Castle Hill, NSW 2154, Australia. &#160;The Australia phone number is 612 9045 4110. &#160;Canada operations are located at 6355 Kennedy Road #15, Mississauga, ON L5T 2L5, Canada. The Canada phone number is 01 (905) 795-1102.&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>1</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>PRODUCTS</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>More complete descriptions including part numbers and pictures of UTMD&#8217;s devices can be conveniently obtained at <span style='border-bottom:1px solid #000000'>www.utahmed.com</span> and <span style='border-bottom:1px solid #000000'>www.femcare.co.uk</span>.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'><b>Labor and Delivery/ Obstetrics</b></span>:</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Fetal Monitoring Accessories.</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Electronic Fetal Monitoring (EFM) is the standard of care in labor and delivery throughout the modern world.&#160; While not all pregnancies are high risk,&#160;fetal&#160;emergencies can occur suddenly in seemingly normal labors.&#160; The use of EFM allows conservation of nursing personnel and has virtually eliminated intrapartum fetal death.&#160; Accurate determination of contraction strength increases the safety of labor augmentation and reduces the need for Cesarean section for desultory labor. Infusion of fluid through an intrauterine catheter may cushion the umbilical cord and improve oxygenation of the fetus.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>To assist the physician in controlling the effectiveness of administration of oxytocin and monitoring effects of amnioinfusion, contraction intensities, uterine resting tones and peak contraction pressures are closely monitored through the use of an invasive intrauterine pressure catheter system. &#160;In addition, to help identify the possible onset of fetal hypoxia, correlation of the changes in fetal heart rate (FHR) relative to the frequency and duration of contractions are often electronically monitored. &#160;UTMD&#8217;s intrauterine pressure (IUP) catheters provide for clinician choices from a traditional fluid-filled system to INTRAN&#174; PLUS, for over thirty years the most widely accepted transducer-tipped system. &#160;UTMD&#8217;s IUP catheters include:&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd>IUP-075 and UTMD&#8217;s other custom fluid-filled clear catheter kits utilize a saline-filled catheter that is placed within the uterine cavity, connected to a separate external reusable or disposable pressure transducer. &#160;This product package, utilizing double lumen catheters, was the traditional mode of intrauterine monitoring prior to the introduction of INTRAN. &#160;An intrauterine pressure change is transmitted through the fluid column to the external pressure transducer.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd>Introduced in 1987, INTRAN was the first disposable intrauterine pressure catheter that placed the pressure transducer at the pressure source within the uterine cavity. &#160;This design eliminated the complicated setup of fluid-filled systems and provided more accurate pressure waveforms. &#160;INTRAN I was discontinued in 1995 in favor of the more widely preferred INTRAN PLUS.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd>INTRAN PLUS, introduced in 1991, combines the transducer tip concept of INTRAN I with a refined tip design, a zeroing switch or button that allows the clinician to reset the reference of the monitor, and a dedicated amniolumen which provides access to the amniotic fluid environment which may be helpful in the diagnosis and intervention of certain fetal conditions. &#160;Subsequent enhancements to INTRAN PLUS included a viewport which allows physicians to observe amniotic fluid in a closed system along with alternative configurations for user preferences in tip size, zero switch/button location and amniotic fluid visualization.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In addition, adjunct tocodynamometer belts are provided by UTMD. &#160;Abcorp toco belts and straps for fetal monitoring by an external tocodynamometer are provided in latex-free form in several configurations. &#160;UTMD extended the product line to include Bari-Belts&#8482; and Bari-Bands&#8482;, a series of abdominal belts designed specifically for bariatric patients and bands to accommodate patients of all shapes and sizes.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD markets tocodynamometer belts, catheters and accessories, but does not market electronic monitors, the capital equipment that processes the electrical signals. &#160;UTMD continues to investigate the feasibility of tools that enhance fetal monitoring techniques.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Specialized Labor &amp; Delivery Tools.</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>BT-CATH&#174; is a patented uterine balloon tamponade catheter for controlling severe postpartum hemorrhage. Its benefits include the ease of rapid deployment and ability to monitor further bleeding after the tamponade has been placed. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The CVX-RIPE&#8482; catheter is designed to mechanically improve the favorability of the cervix of pregnant patients at term gestation, for whom induction of labor is medically indicated. CVX-Ripe utilizes two adjacent conical silicone balloons, similar to the shape of an hourglass. &#160;This design is intended to allow the clinician to gently apply internal pressure to the cervical canal, as well as both the internal and external os, to reduce the time needed to allow induction as well as the total time to achieve a successful vaginal delivery. &#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>AROM-COT&#8482; is a finger cover with a prong designed to rupture maternal membranes with less patient pain and anxiety. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>MUC-X is an aspiration device used immediately after birth to clear neonatal respiratory passages and reduce exposure to potential infections. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>CORDGUARD&#174; is a device which unifies the multiple steps of clamping the neonate&#8217;s cord close to the umbilicus, severing the cord without splattering blood, drawing a clean cord blood sample and assisting in the removal of the placenta. &#160;CORDGUARD&#8217;s sharpless, closed system reduces the risk of exposure to potentially infected blood, and consequently reduces the high cost of exposure treatment under OSHA and CDC guidelines. In addition, CORDGUARD facilitates obtaining neonatal blood that is otherwise hard to obtain safely and cleanly.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Vacuum-Assisted Delivery (VAD) Systems.</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD&#8217;s VAD Systems include CMI&#174; soft silicone bell-shaped birthing cups and reusable hand-held vacuum pumps which are the safest products available for use in vacuum-assisted operative deliveries. UTMD&#8217;s soft silicone cup is a bell-shaped cup design that should be preferred for fetal well-being in low or outlet fetal stations with occiput anterior presentations, which represent more than 90% of the cases where VAD is indicated. &#160;Operative vaginal deliveries using forceps or vacuum-assisted delivery systems provide knowledgeable physicians with a trial vaginal operative delivery prior to a more invasive C-section intervention. Although there are risks associated with vaginal operative deliveries which may currently represent about 3% of all U.S. hospital births, the procedures are generally regarded as safer long term for the mother, and at least as safe for the fetus, as abdominal (Cesarean) delivery in comparable clinical situations. &#160;UTMD&#8217;s bell-shaped soft silicone TENDER TOUCH&#174; cups enjoy a significantly lower reported complication rate compared to other vacuum cup designs, as evidenced by the FDA Medical Device Reporting System (MAUDE) which publicly lists serious injuries reported by hospitals using specific brand names of products. &#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>2</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'><b>Neonatal Intensive Care</b></span>:</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>DISPOSA-HOOD&#8482;</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The DISPOSA-HOOD is an infant respiratory hood that is used in the NICU to administer oxygen to neonates and flush CO2 (carbon dioxide) while maintaining a neutral thermal environment (NTE) critical to proper physiologic responses. The DISPOSA-HOOD, placed over the infant's head, incorporates a round diffusor connection specifically designed to disperse the incoming gases along the inner surfaces of the hood, rather than allowing them to blow directly on the infant's head. &#160;The design allows more precise FIO2 (fractional inspired oxygen) control, minimizes convective heat loss from the head, provides optimum flows for elimination of CO2 by ventilation and allows for humidification. DISPOSA-HOOD, in contrast to an incubator, allows for excellent access to and visualization of the underdeveloped infant. &#160;Because it is a disposable product, it also prevents potential cross-contamination that might occur with an incubator. Less invasive than nasal cannulae, DISPOSA-HOOD avoids potential damage to fragile premature neonatal nasal/ orotracheal tissues, as well as facial tissues as cannulae are often secured with tape. &#160;&#160;A nasal cannula by itself cannot provide a NTE.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>DELTRAN&#174; PLUS</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD&#8217;s DELTRAN blood pressure monitoring system has been adapted specifically for use in the NICU. &#160;The streamlined version eliminates needles used for blood sampling, avoids the loss of scarce neonatal blood volume and provides a closed system that reduces the risk of infection. &#160;The system features excellent visualization of clearing volume, and one-handed use. &#160;UTMD continues its customization of Deltran kits for specific hospital applications.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>GESCO&#174;</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In 1998, UTMD acquired the neonatal product line of Gesco International. &#160;GESCO, best known for optimally biocompatible silicone catheters, gained an early distinctive reputation for its focus on the special developmental needs of tiny, critically-ill babies. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>A class of catheters called umbilical venous catheters (UVCs) are specially designed for administering vital medications and fluids immediately following birth through the infant&#8217;s umbilical vessel into the inferior vena cava. &#160;Because of the neonate&#8217;s small size and lack of vascular development, there is no better access to vital organs. &#160;The catheters are also called umbilical artery catheters (UACs) when placed in one of the umbilical arteries to measure blood pressure or monitor metabolic processes through blood analysis. &#160;In developing its UMBILI-CATH&#8482; product line, Gesco pioneered the use of soft, biocompatible silicone catheters, helping to reduce the number of insertions required as well as other complications associated with invasive applications. &#160;UTMD has expanded the UVC product line to include catheters made from a proprietary thermosensitive polyurethane (Tecoflex&#174;) that offers many of the flexibility and biocompatibility advantages of silicone after insertion, with the greater rigidity of polyurethane preferred by many clinicians for insertion. In addition, GESCO provides a convenient catheterization procedure tray of instruments and supplies necessary to place UVC catheters, as well as perform other similar procedures.&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>3</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'> &#160;&#160;&#160;The primary distinction of GESCO products is that they were developed with the special needs of the neonate in mind, not just cut-down or smaller versions of adult devices. &#160;For example, in the case of invasive catheters, the introducer, the soft rounded distal tip, mode of securing to the patient after insertion to avoid migration, luer-locking hub with minimal dead space, number of lumens, catheter radiopaque striping for visualization, variations in catheter lengths and diameters and special packaging are all features specially designed for neonates. UTMD continues to modify product features to incorporate current neonatal practitioner preferences. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The soft, biocompatible silicone catheter concept had important advantages in other applications including peripherally inserted central venous catheters (PICC lines), enteral feeding tubes, urinary drainage catheters and chest drainage tubes. &#160;GESCO developed and marketed initial versions of all of these neonatal products. &#160;In order to keep pace with the trend of caring for smaller babies, UTMD has added smaller diameter versions of its URI-CATH&#174; and NUTRI-CATH&#174; products. At the request of customers who prefer a stiffer catheter for insertion, UTMD added a Tecoflex polyurethane oral-connection only Nutri-Cath series.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>PICC-NATE&#174; is a percutaneous intraepithelial central venous catheter family of devices specifically designed to minimize trauma to the critically ill neonate. &#160;The product line was designed with the input of experienced neonatal medical practitioners for use as a long-term indwelling catheter system for single-use, therapeutic central venous infusion of drug solutions, blood products or other fluids and for blood sampling. &#160;The soft, strong silicone PICC-Nate comes in two diameter sizes, 1.9 Fr and 3.0 Fr, and two hub configurations for securement. UTMD added Tecoflex polyurethane versions in the same sizes that offer many of the flexibility and biocompatibility advantages of silicone after insertion, with the greater rigidity of polyurethane preferred by many clinicians for insertion. &#160;Recently, UTMD also added a tiny 1.1Fr Tecoflex PICC-Nate. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD developed a unique enteral feeding-only extension set named NUTRI-LOK&#174; that addresses important safety risks in the NICU &#8211;&#160;inadvertent connections with IV lines and inadvertent disconnections of components of the system spanning the dispensing container through the infusion catheter. &#160;UTMD added dispensing syringes with interlocking connectors to its NUTRI-CATH/NUTRI-LOK family of enteral feeding devices. &#160;UTMD further expanded the NUTRI-LOK system with specialty extension sets for GI tubes and for continuous connection to a fluid pump. &#160;In addition, UTMD added variations in adapters and extension sets used with NUTRI-CATH. &#160;Recognizing the important need to prevent misadministration of enteral feeding or medication by the wrong route, the FDA in February 2015 released its guidance, &#8220;Safety Considerations to Mitigate the Risks of Misconnections with Small Bore Connectors Intended for Enteral Applications.&#8221; &#160;The guidance includes compliance with ISO 80369-3 standard connectors. The standard was released to create a universal connection that is not compatible with a luer connection or any other type of small bore medical connector.&#160; As a result, UTMD introduced an alternative enteral feeding family of devices incorporating ENFit&#8482; ISO 80369-3 compliant connectors.&#160; These purple connectors are designed to replace Nutri-Lok connectors on catheters and extension sets.&#160;UTMD also distributes ENFit oral syringes.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD replaced all DEHP plasticizer PVC materials in its Gesco product line that may come in contact with neonatal patients, addressing another safety concern related specifically to the possible maldevelopment of male neonates. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Other GESCO specialty products include a disposable peritoneal dialysis (PD) set that is a pre-assembled, sterile, closed system, called DIALY-NATE&#174;. &#160;PD is an ideal method to aid compromised renal function in a neonate because critically-ill pediatric patients may not have sufficient blood volume to support hemodialysis. DIALY-NATE is provided in a form that allows timely PD implementation. &#160;A number of custom configurations of DIALY-NATE have been added to satisfy specific clinical preferences.&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>4</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Other specialty NICU devices include a silicone oral protection device used to prevent palatal soft tissue injury by orotracheal tubes, called PALA-NATE&#174;; a pre-assembled, closed urinary drainage system, called URI-CATH&#174;, which reduces risk of infection and valuable nursing time, and a lumbar sampling kit with a tiny, specially-beveled needle for obtaining cerebral spinal fluid samples, called MYELO-NATE&#174;. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>GESCO&#8217;s first patented product, HEMO-NATE&#174;, is a disposable filter designed to remove microaggregates from stored blood prior to transfusion into a neonate where any deficiency can have an overwhelmingly negative impact on a neonate&#8217;s chances for survival, given an under-developed vasculature and small total blood volume. &#160;UTMD also introduced a new filter and an improved blood bag spike for HEMO-NATE, and a needleless version. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD expects to continue to enhance and expand its neonatal product line, seeking to reinforce a reputation as having the most reliable and developmentally-friendly specialty devices available for the NICU. &#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'><b>Gynecology /Urology /Electrosurgery</b></span>:</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>LETZ&#174; System</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The LETZ System (loop excision of the transformation zone) is used to excise cervical intraepithelial neoplasia (CIN) and other lower genital tract lesions related to human papilloma virus (HPV) infections. &#160;The electrosurgery procedure with hemostasis has become the standard of care for HPV cervical infection treatment, replacing cold knife scalpel, laser and cryotherapy procedural approaches because it is economical, safe, effective, quick and easy to perform, has fewer potential side effects and requires little physician training. &#160;A major incentive for performing the LETZ procedure is that it may be performed using local anesthetic in a physician's office, eliminating the time and expense of hospital or surgical center admittance. &#160;Most importantly clinically, in contrast to laser (tissue ablation) and cryotherapy (freezing of tissue), LETZ provides a fine tissue specimen for pathological assessment. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD&#8217;s LETZ System includes disposable electrodes, the FINESSE&#174; electrosurgical generators and other miscellaneous components. &#160;A disposable loop electrode used to excise the tissue specimen is a pencil-like tube with a thin tungsten wire loop attached. &#160;The loop is available in varying sizes and includes a Safe-T-Gauge&#174; that can be positioned so the physician can accurately monitor and control the amount of tissue being excised. Excising too much tissue can compromise fertility and result in premature birth. Excising too little tissue can result in failure to remove the precancerous tissue. UTMD continues to augment its specialty electrodes. For example, the Company markets a unique conization electrode for deep endocervical disease called C-LETZ&#174;, designed by UTMD to limit the removal of healthy tissue margins that might compromise adequate cervical function. &#160;UTMD introduced a patented electrode attachment that prevents interference with the colposcope during LETZ. UTMD also will continue to provide other components to augment the use of its market-leading specialty electrodes with other manufacturers&#8217; electrosurgical generators. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>After more than 20 years on the market, UTMD completed a significant redesign, and achieved certification to current EN 60601 international safety standards, for a FINESSE+ electrosurgical generator. &#160;The FINESSE+ design includes dispersive pad contact monitoring for improved patient safety, improved circuitry for computer controlled-output that provides a precise tissue specimen for histopathology, a more efficient output stage resulting in less heat generation and longer electronic component life, an update to electronic components which reduces the number of required components and increases service life, and an easy change internal filter for integral smoke evacuation, a unique feature of FINESSE.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>FINESSE+ Generator; Specialty Loop, Ball, and Needle Electrodes; FILTRESSE&#174; Evacuator; Other Specialty Electrodes; Other UTMD Supplies and Gynecologic Tools; Femcare Trocars and Cannulae; and Femcare Laparoscopic Instruments and accessories.</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD has FDA clearance to market its electrosurgical system and tools for use in general surgery applications, including dermatology, plastic surgery and otolaryngology. &#160;FILTRESSE is a stand-alone surgical smoke filtration system that combines high filtration efficiency, low cost and convenient use in a surgical office setting. Other electrosurgery tools and accessories include disposable electrosurgical pens, dispersive pads, footswitches, filter packs, speculums, retractors, forceps, tenacula and hooks. &#160;UTMD acquired the distribution rights to a unique reusable four-way expander system which facilitates access to, and visualization of, the cervix, eliminating the need for less effective specula and lateral retractors. &#160;OptiSpec&#174; is a patented ultra-bright light for cervical visualization without physician distraction during exams, pap smears and other vaginal procedures requiring direct cervical visualization without the use of a colposcope. &#160;As part of its acquisition of Femcare, UTMD acquired single patient use trocars and cannulae available in shielded and bladeless designs, suction and irrigation tubing, insufflation tubing and connectors, pressure infusor bags and control valves. Also acquired were Femcare&#8217;s hormone replacement therapy (HRT) trocar/obturator and HRT procedure tray for subdermal placement of hormone tablets, and a femoral sponge product used during joint replacement surgery. &#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>5</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>EPITOME&#174; and OptiMicro&#8482; Electrosurgical Devices</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>After finding the general surgical market lacked a precision electrosurgical blade, UTMD developed EPITOME, an electrosurgical scalpel which delivers precise performance in surgical incision and excision with hemostasis while minimizing thermal side effects. &#160;Where rapid yet precise dissection of dense or fatty tissue is necessary, such as in mammaplasty or abdominoplasty, UTMD believes that EPITOME has no close substitute. &#160;Furthermore, an independent study concluded that the EPITOME scalpel provides a significant improvement over other devices in wound healing. &#160;EPITOME allows a rapid incision without countertraction, yielding limited morbidity, less post-surgical pain and cosmetically superior results. &#160;&#160;EPITOME is useful where minimization of thermal tissue injury is important but control of bleeding needed. A bendable version of EPITOME with a smaller active electrode was introduced later. Designed to significantly reduce the chance of tissue burns due to inadvertent electrode contact and where a smaller, bent scalpel tip is needed, the bendable EPITOME is of particular value, e.g., to thoracic surgeons in harvesting the internal mammary artery during coronary artery bypass surgery, as well as to otolaryngologists for tonsillectomies or uvulopalatoplasties, or plastic surgeons creating or working in a breast pocket during augmentation or capsulectomy.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD introduced a product line of ultra-fine tipped microdissection needles, called OptiMicro&#8482; Needles, to complement the Epitome Scalpel. &#160;Whereas the Epitome Scalpel has been particularly effective for large scale surgeries that entail a great amount of tissue cutting, the OptiMicro electrosurgical needles are particularly useful in small-scale plastic and reconstructive surgery applications where extreme precision and ideal cosmetic results are expected. &#160;UTMD added extended length OptiMicro needle versions useful in certain head and neck procedures.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Filshie&#174; Clip System</span></p>
<p style='font:10pt Times New Roman;margin:0'> &#160;&#160;UTMD acquired the Filshie Clip System as part of its acquisition of Femcare in March 2011. In 2021, sales of Filshie Clips, applicators and accessories represented 27% of UTMD&#8217;s total U.S. Dollar denominated sales. The Filshie Clip is a female surgical contraception device used for tubal ligation, i.e., placed on the fallopian tubes, generally laparoscopically, but also postpartum during a C-Section procedure. The Filshie Clip, implanted in over six million women worldwide during the last 39 years, has empirically been proven to be the safest and most effective tubal occlusive device, is as easy or easier to achieve occlusion as any of the alternative surgical techniques, and has a substantially higher probability of reversibility when compared to all of the other approaches for women who later decide that they might like to get pregnant. Femcare has obtained numerous regulatory approvals for the Filshie Clip System, which throughout 2021 was sold OUS directly by UTMD and its subsidiaries to medical facilities in Canada, Ireland, France, the UK, Australia and New Zealand, and through specialty distributors in other countries. Femcare Australia began to distribute the Filshie Clip System directly to New Zealand medical facilities in 4Q 2020. In February 2019, UTMD purchased the remaining exclusive U.S. distribution rights of CooperSurgical Inc. (CSI), allowing the Company to directly distribute the Filshie Clip System to medical facilities in the U.S. &#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;&#160;There are several tubal ligation methods with varying degrees of effectiveness, safety and opportunity to be reversed. &#160;The traditional tubal ligation approach, informally known as &#8220;getting one&#8217;s tubes tied&#8221;, is a form of female sterilization in which the fallopian tubes are severed and sealed, permanently occluded or pinched shut. &#160;If the sterilization procedure is carried out postpartum, the Pomeroy technique is often adopted. During this procedure a small loop of the fallopian tube is tied with a suture and the top section removed by cutting. A traditional method for interval sterilization is with the use of Bipolar Cautery (electrocautery). With this method, a current flows between the tips of forceps when applied to the fallopian tube. This current then &#8220;burns&#8221; a portion of the fallopian tube shut. Bipolar diathermy has a higher rate of ectopic pregnancy, a life-threatening complication, compared to other tubal occlusion methods. Although these common methods are relatively easy to perform, the failure rate of these methods, defined as the percentage of patients having undergone the procedure who subsequently get pregnant, has been reported to be about 3%. The Filshie Clip, which can be used either post-partum (following childbirth) or at times unrelated to the post-partum period (interval sterilization), is at least as easy to use, has much less intraoperative risk to apply, has a reported failure rate an order of magnitude less than Bipolar Cautery and is more effective and much simpler to perform than the Pomeroy technique.</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>6</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'> &#160;&#160;Apart from Bipolar Cautery and the Pomeroy technique, other mechanical devices have been the Falope Ring (or Yoon Ring) and the Hulka Clip (which is no longer manufactured). Both these older methods have a higher failure rate than the Filshie Clip, are associated with more post-operative pain and have generally been abandoned in favor of other sterilization techniques. Sterilization carried out with the Falope Ring also reduces the chances of a successful reversal being carried out. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;&#160;In more recent years, hysteroscopic sterilization devices were introduced as an alternative to laparoscopic tubal ligation. The devices were the Adiana by Hologic Inc and the ESSURE by Conceptus, Inc. (acquired by Bayer AG in 2013). &#160;Both of these transcervically implanted devices are no longer being marketed; Adiana was stopped in 2012 and ESSURE was stopped in 2017. Prior to Bayer ceasing the distribution of ESSURE, the device had received a substantial amount of negative publicity regarding unwanted side effects, particularly from patients through social media. Unfortunately, because both the Filshie Clip and ESSURE are surgically implanted devices designed to achieve sterilization by tubal occlusion, some readers of the media have incorrectly concluded that the negative side effects of ESSURE also apply to Filshie Clips. UTMD would like to provide clarification to stockholders why this association is incorrect.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;In particular, within a few hundred thousand implanted ESSURE devices, thousands of women complained about possible autoimmune responses, allergic response to nickel and/or significant chronic pain. These symptoms do not apply to Filshie Clips as the ESSURE device and Filshie Clips are substantially different in design and use. &#160;ESSURE had a metal coil with a tip capable of perforation, with nickel components, hysteroscopically implanted (with some difficulty and risk of unwanted bodily injury) inside the Fallopian tubes, which then caused scar tissue to grow around it over time and occlude the tubes. Filshie Clips are clamped over the tubes, laparoscopically or following a C-section, with immediately effective occlusion and almost no chance of patient injury beyond the normal risks of laparoscopic surgery. There are no nickel components in the Filshie Clip. However, a minute amount of nickel does exist in medical grade silicone and titanium, generally accepted worldwide as the most biocompatible materials for human implants. A toxicology study by a reputable microbiology firm confirmed that the amount of nickel found in Filshie Clips is significantly less than that found in normal drinking water and foods. Orthopedic implants, for example, are routinely made of titanium in massively greater amounts. There have been a few patient complaints of suspected allergic response to Filshie Clips within millions of uses (including from patients allergic to copper, of which there is none in Filshie Clips), but no such reports from clinicians or in the clinical literature.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Pain associated normally with any laparoscopic procedure generally resolves within 48 hours, and is not severe nor does it become chronic unless the result of an infection. Sterile Filshie Clips are provided to the surgeon in validated sterile packaging. Nevertheless, pain is the most prevalent (but still rare) Filshie Clip complaint. &#160;In women with implanted clips who have reported chronic pain, several other gynecological symptoms are typically present which are not related to Filshie Clips. The obvious recourse for a person experiencing pain that she associates with an implanted device is to remove it. &#160;ESSURE, difficult if not impossible to remove, requires specialized surgical technique. In contrast, given currently widely available imaging and normal laparoscopic skills, Filshie Clips can be removed safely, although removal is rarely requested by patients or recommended by physicians.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>A well-known and clinically-reported potential side effect of Filshie Clip tubal ligation is clip migration. A clip occluded Fallopian tube eventually separates into two permanently closed stubs after tissue necrosis under a closed clip. Peritoneal tissue usually encapsulates an implanted clip while still in contact with the Fallopian tube. &#160;In some cases where tissue encapsulation is slow, migration of a clip occurs after sterilization has been achieved. Although the silicone lining of the clip helps prevent clip migration and reduces the risk of tubal regeneration, one clinical journal publication indicated migration occurs 6% of the time. Dr. Marcus Filshie, the inventor of the clip, expressed his opinion in 2002 that more than 25% of patients will experience a migration of one or more clips, typically within the abdominal cavity. Once detached, the clip becomes encompassed in dense adhesive tissue normally without any symptoms, only rarely causing any symptoms. A low grade inflammatory response can occur. Because clips are biologically inert and relatively small, physicians generally have concluded that removing a migrated clip represents more risk to long term well-being than leaving it in the body. &#160;In 2019, UTMD retained a clinical expert who in 2010 had published the results of an almost twenty-year retrospective review of all reported Filshie Clip migration events in the English literature, in order to independently review all reported complaints contained in the US FDA MAUDE website and the Australia TGA DAEN website over the most recent ten years. His February 2019 written report generally observed that &#8220;There were no serious clinical or life-threatening complications that related directly or indirectly to the Filshie Clips or their migration.&#8221; &#160;&#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>7</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Unfortunately, in late 2021, after 25 years&#8217; use in the U.S., implanted in millions of women, a clip migration lawsuit was filed in Texas. Subsequently, plaintiffs&#8217; lawyers solicited and recruited claimants in five other states. There are presently a total of seven clip migration lawsuits filed in six states. &#160;In UTMD&#8217;s view, the current lawsuits which have not been litigated yet are without merit, and should be resolved without a material impact on UTMD&#8217;s consolidated performance. UTMD stockholders should be confident that Filshie Clips remain a very safe and effective method of tubal occlusion.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The U.S. FDA approved the Filshie Clip for marketing in the U.S. in 1996 after a PMA submission which included a prospective clinical trial involving 5,454 women implanted with Filshie Clips. &#160;As mandated by the FDA, Femcare, the developer and manufacturer of the Filshie Clip System, must submit an annual experience report for FDA&#8217;s continual review and vigilance of the safety and effectiveness of the PMA device. &#160;In late 2016, the FDA approved the use of Femcare&#8217;s Sterishot single use applicator for applying Filshie Clips. An applicator is a precision instrument which closes the implanted Filshie Clip on the Fallopian tube to achieve proper permanent tubal ligation. Reused applicators require extra handling, cleaning, resterilization and storage which have the potential to damage or misalign the delicate mechanism. Timely periodic servicing and recalibration is needed but often not sought by hospitals. In addition, the reuse of a surgical instrument introduces the possibility of infection if not properly cleaned and resterilized between procedures. The precalibrated, single-use sterile Sterishot eliminates these safety, effectiveness and cost exposures. After more than ten years since being introduced outside the U.S. (OUS), the patented Sterishot is used in the majority of Filshie Clip ligation procedures OUS, but was not effectively marketed by CSI. &#160;Beginning in February 2019, UTMD began directly marketing the Filshie Clip System in the U.S., recommending the adoption of Sterishot kits. &#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>PATHFINDER PLUS&#8482;</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>PATHFINDER PLUS is a proprietary endoscopic irrigation device that allows a uro/gyn surgeon to precisely irrigate, clearing the visual field, with the same hand that controls the endoscope, eliminating the need for a separate assistant to irrigate without visualization. &#160;An example of a procedure where Pathfinder has found particular success is ureteroscopic stone ablation.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>SUPRAPUBIC CATHETERIZATION</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The Add-a-Cath&#8482; introducer is a Femcare device designed for easy and safe suprapubic introduction of a catheter for bladder drainage. &#160;Suprapubic catheterization is generally well-recognized as a drainage method with fewer complications than with urethral catheterization. &#160;&#160;In 2013, UTMD introduced suprapubic catheterization procedure kits featuring the Add-a-Cath introducer, which UTMD now distributes directly to end-users in the U.S. under the trade name Supra-Foley&#174;.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>LIBERTY&#174; System</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>LIBERTY is a device for the conservative treatment and effective control of urinary incontinence in women. &#160;UTMD believes that LIBERTY is the easiest-to-use, most cost effective incontinence treatment available that yields a therapeutic effect, not just a cover-up. LIBERTY consists of a battery operated electrical stimulation unit and an intravaginal electrode probe. &#160;This physiotherapy technique, which can be done in the privacy of the home, involves passive strengthening of the periurethral muscles. &#160;Pulsed, low voltage, high frequency current is applied primarily to the pudendal neuromuscular tissue causing the pelvic area muscles to contract, leading to better muscle tone. &#160;Because electrical stimulation has no known adverse side effects, LIBERTY provides women suffering from mild to moderate incontinence an effective, lower cost and lower risk alternative to more traumatic treatments such as surgery and drug therapy. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>ENDOCURETTE&#174;</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In cooperation with Mayo Clinic, UTMD developed an advanced curette for uterine endometrial tissue sampling in the doctor&#8217;s office. &#160;The sampling procedure is intended primarily to rule out precancer or cancerous change of the uterus in premenopausal women with abnormal uterine bleeding, or women with postmenopausal bleeding. &#160;The device is part of a class of catheters designed to be used without dilatation of the cervix and without general anesthetic. &#160;The inherent weakness of this type of device, which is related to its small size, is that it may not remove enough tissue of the endometrium for an accurate histologic assessment, in contrast to a more invasive D&amp;C hospital procedure. &#160;The tip of the EndoCurette was specially designed to obtain a more thorough tissue specimen compared to other catheters used without the need for dilatation, and without an increase in patient discomfort. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>TVUS/HSG-Cath&#8482;</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In order to further assess persistent abnormal or dysfunctional uterine bleeding and other suspected abnormalities of the uterus, or as a next step after endometrial tissue sampling with an EndoCurette, gynecologists may utilize transvaginal ultrasound imaging of the uterus. &#160;UTMD&#8217;s TVUS/HSG-Cath was designed and released for marketing in 2007 to provide effective cervical occlusion that allows distention of the uterus to differentiate anterior and posterior endometrium, among other irregularities, together with minimal visual obstruction of the uterus near the internal os. &#160;In addition, the TVUS/HSG-Cath may be used in hysterosalpingography radiographic procedures to assess the patency of fallopian tubes. &#160;A related device acquired in 2011 is Femcare&#8217;s Spackman Style uterine cannula designed for the manipulation of the uterus and injection of fluid to test the patency of the fallopian tubes. &#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>8</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>LUMIN&#174;</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>LUMIN&#174; is a gynecological tool developed by UTMD for reliably and safely manipulating the uterus in laparoscopic procedures. &#160;LUMIN combines the strength, range of motion and versatility of the higher end reusable instruments with the lower cost and cleanliness of the inexpensive less functional disposable instruments presently on the market, while at the same time reducing the number of tools needed to move and secure the uterus. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'><b>Blood Pressure Monitoring:</b></span></p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>DELTRAN&#174; Disposable Pressure Transducer (DPT)</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In pressure monitoring, a transducer is used to convert physiological (mechanical) pressure into an electrical signal that is displayed on electronic monitoring equipment. &#160;UTMD developed and is now distributing its disposable transducer as a stand-alone product, and as a component in sterile blood pressure monitoring kits through direct representatives and other medical companies in the U.S., as well as independent distributors and other medical device companies OUS.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The Company believes that the DELTRAN DPT which it designed over thirty years ago and currently manufactures, remains the standard in terms of accuracy, reliability and ease of use. &#160;Introduced in 1998, the DELTRAN PLUS provides a closed system for blood sampling, without the use of needles, reducing the risk of an unwanted infection for both the patient and the practitioner. &#160;In 2009, in conjunction with its other NICU devices, UTMD continued to configure neonatal Deltran custom kits which satisfy the special needs of conserving limited blood volume and protecting the neonate from infection. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Pressure Monitoring Accessories, Components and Other Molded Parts.</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Components included in blood pressure monitoring kit configurations include transducers, flush devices, stopcocks, fluid administration sets, caps, pressure tubing, interface cables and organizers. &#160;The Company sells similar components designed for other medical device company applications which incorporate UTMD&#8217;s technologies and designs. &#160;DELTA-CAL&#8482; is a calibration device used to check proper functioning of an arterial pressure system. &#160;In addition, UTMD sells plastic molded parts on a subcontract basis to a number of medical and non-medical device companies. &#160;In addition, partly as a result of its excellent quality system and ISO13485 certification, UTMD performs subcontract assembly, testing and packaging of components that are proprietary to other medical device firms. &#160;UTMD believes that this practice helps better utilize its investment in fixed plant and equipment, and spreads overhead costs resulting in better gross profit margins on finished device sales. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>MARKETING and COMPETITION</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD divides its sales into &#8220;domestic&#8221; U.S. sales and &#8220;outside the U.S.&#8221; (OUS) sales, which are finished device and component sales to entities outside the U.S. &#160;&#160;&#160;&#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>1) &#160;<span style='border-bottom:1px solid #000000'>Domestic sales</span>.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>For domestic sales to end-users of finished devices, marketing efforts are complex and fragmented. &#160;UTMD&#8217;s marketing focus is with clinicians who take responsibility for obtaining optimal patient care outcomes, primarily through clinical meetings, trade shows and the Internet. &#160;In competitive bidding processes, UTMD must work primarily with administrators who are responsible for hospital purchasing decisions. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD competes primarily on the basis of improved patient safety and reliable device performance in the hands of a trained clinician. &#160;A number of UTMD&#8217;s devices are strong brands because they are well-recognized by clinicians as clinically different and have been in trusted use for decades. &#160;UTMD&#8217;s broad offering of finished devices is comprised of dozens of specialty device types. &#160;Although there may be only a few competitors for each type, in the aggregate UTMD has dozens of U.S. medical device competitors. &#160;There are at least two competitors with significant market share for each of UTMD&#8217;s device types. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>As a general rule, because of UTMD&#8217;s differences in design and reliability, competitors&#8217; devices represent substitutes rather than equivalent devices. &#160;The Company&#8217;s primary marketing challenge is to keep its customers focused on those differences and their important clinical benefits. &#160;In recent years, access to U.S. hospital clinicians has become increasingly restricted and the involvement of clinicians in medical device purchasing decisions, which is critical to the Company&#8217;s success, has declined. To the degree that U.S. hospitals become less focused on patient safety and clinical outcomes and more on out-of-pocket unit price, UTMD&#8217;s competitive position weakens. &#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>9</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In 2021, UTMD sold components and finished devices to 155 other companies in the U.S. (OEM sales). For over 40 years, the Company has utilized its manufacturing capabilities and engineering know-how to produce high quality components and finished devices for other companies. &#160;For U.S. companies which wish to distribute their products outside the U.S., UTMD&#8217;s maintenance of certification to current ISO 13485 medical device quality standards is an important benefit. &#160;UTMD&#8217;s website, which lists its capabilities, is often the basis for contacts for new OEM work.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Although there are other manufacturers in the U.S. with similar manufacturing capabilities, UTMD&#8217;s primary competition comes from Mexico, East Europe, India and China device component manufacturers which have much lower wage rate structures. To the extent that the U.S. Dollar (USD) gains strength in any period of time against foreign currencies, UTMD&#8217;s ability to be cost-competitive with foreign manufacturers is diminished. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>2) &#160;<span style='border-bottom:1px solid #000000'>Outside the U.S. (OUS) sales</span>. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>OUS sales in 2021, as a percentage of consolidated total USD sales, represented 38% compared to 39% in 2020 and 41% in 2019. &#160;The lower OUS share of total sales in 2021 was the result of more restrictions on medical procedures OUS, especially in Europe, due to the COVID-19 pandemic. &#160;In USD terms, 72% of 2021 OUS sales were invoiced in foreign currencies. In addition, foreign subsidiary expenses are in the native currency of the respective country. &#160;Therefore, changes in foreign currency exchange (FX) rates can have a significant impact on UTMD&#8217;s USD-reported financial results. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Prior to 2011, with only a few exceptions, UTMD&#8217;s OUS sales were to other medical device companies and distributors, not to clinical end-user facilities. After the acquisition of Femcare in 2011, UTMD began a transition to marketing directly to end-users in countries where the Filshie Clip System had achieved significant acceptance. This also allowed increased distribution opportunities for other UTMD devices which previously did not have significant third party distributor interest. &#160;In 2021, UTMD distributed directly to OUS medical facilities in Canada, the UK, France, Ireland, Australia and New Zealand. &#160;In addition, the Company&#8217;s devices are sold in other countries OUS through over 220 independent regional distributors. UTMD&#8217;s website provides information that frequently results in unsolicited contacts from OUS entities. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>DISTRIBUTION</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>An important success factor in the medical device industry is access to medical practitioners. &#160;In the U.S., the hospital supplier environment has consolidated as a result of group purchasing organizations (GPOs), or their equivalents. &#160;It is UTMD&#8217;s assessment that U.S. hospitals are not saving costs under GPO contracts when it comes to specialty medical devices that can reduce complications, utilization rates, clinician time and unwanted side effects, because administrators are focused primarily on out-of-pocket costs and miss the broader total cost of care issues. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The longer term overall cost of care in the U.S. will continue to increase, with quality of care lower, as innovative suppliers are excluded from participating in the marketplace as a result of unnecessary regulatory and other purely administrative burdens. The length of time and number of administrative steps required in evaluating new products for use in hospitals has grown substantially. As a potential negative factor to future performance, as UTMD introduces new products it believes are safer and more effective, it may find itself excluded from certain customers because of the existence of long term supply agreements for existing products. UTMD may also be unable to establish viable relationships with other medical device companies that do have access to users but lack an interest in the Company&#8217;s approach or demand too great a financial or administrative burden. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>When U.S. hospital customers request it, UTMD provides its devices through national distribution companies, also known as Med/Surg distributors. &#160;Sales to Med/Surg distributors in 2021 comprised 11% of total domestic direct sales (excluding domestic OEM sales). &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>  &#160; In the U.S., Canada, Ireland, France, the UK, New Zealand and Australia, UTMD sells its products with the support of its own directly employed customer service and sales force, independent consultants and selective independent manufacturer representatives. &#160;Direct sales representatives focus on applications for UTMD devices where customer training and support may be important. The direct employee sales force is comprised primarily of &#8220;inside&#8221; representatives who operate by telephone and email from corporate offices. &#160;The Company also utilizes independent sales representatives primarily on a growth commission basis. &#160;Direct representatives are trained to understand the medical procedures being performed within UTMD&#8217;s clinical focus. Through the use of its one-on-one contacts with physicians and other clinical practitioners directly involved in patient care, the direct sales force positions UTMD to gain market leadership with specific solutions to clinical issues. In addition to its direct representatives, UTMD utilizes third party consulting clinical specialists to augment its customer training programs.</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>10</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Additionally, UTMD sells component parts as well as finished devices to other companies for use with their product lines. &#160;This OEM distribution channel is simply maximizing utilization of manufacturing capabilities that are otherwise needed for UTMD's primary business, and does not compete with or dilute UTMD&#8217;s direct distribution and marketing programs.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>OUS, the Company and its subsidiaries distribute directly to end-user facilities in Canada, the UK, France, Ireland, New Zealand and Australia, and in 2021 sold to over 220 regional distributors and OEMs (other medical device manufacturers and/or distributors) in over a hundred countries. Ten percent of UTMD&#8217;s independent OUS distributors comprised 77% of UTMD&#8217;s indirect OUS sales in the years of 2019 - 2021. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>NEW PRODUCT DEVELOPMENT &#160;</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>New product development has been a key ingredient to UTMD&#8217;s market identity. &#160;Product development takes several interrelated forms: 1) improvements, enhancements and extensions of current product lines in response to clinical needs or clinician requests, 2) introduction of new or augmented devices that represent a significant improvement in safety, effectiveness and/or total cost of care, and 3) acquisitions of products or technology from others. &#160;Manufacturing process development is an equally important aspect that cannot be separated from the successful design and development of devices. &#160;&#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Because of UTMD&#8217;s reputation as a focused product developer, its financial strength and its established clinician user base, it enjoys a substantial inflow of new product development ideas. &#160;Internal development, joint development, product acquisitions and licensing arrangements are all included as viable options in the investigation of opportunities. &#160;Only a small percentage of ideas survive feasibility screening. &#160;For internal development purposes, projects are assigned to a project manager who assembles an interdisciplinary, cross-functional development team. &#160;The team&#8217;s objective is to have a clinically acceptable, manufacturable and regulatory-released product ready for marketing by a specific date. &#160;Several projects, depending on the level of resources required, are underway at UTMD at any given time. Only a few assigned projects succeed in attaining a product that meets all of the Company&#8217;s criteria. In particular, this includes a product that is highly reliable, easy to use, cost-effective, safe, useful and differentiated from the competition. Once a product is developed, tooled, fully tested and cleared for marketing by the applicable regulatory entity(ies) in the U.S. and/or other countries, there remains a reasonable probability it cannot be successfully marketed for any number of reasons, not the least of which is being beaten to the market by a competitor with a better solution, or not having access to users because of limitations in marketing and distribution resources or exclusionary contracts of GPOs. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD&#8217;s current product and process development projects are in the following areas: 1) augmentation and internal manufacturing of existing UTMD devices, 2) neonatal intensive care, 3) specialized procedures for the assessment and treatment of cervical/uterine disease, 4) labor and delivery procedures, and 5) product and process development for OEM customers. Internal product development expenses are expected to remain in the range of 1-2% of sales. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>EMPLOYEES AND OTHERS </span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>At December 31, 2021, the Company worldwide had 178 full-time employees, 33 part-time employees, 7 regular consultants, 20 independent manufacturer&#8217;s sales representatives and an additional 11 subcontract production employees in Utah. &#160;The Utah subcontract employees represent UTMD&#8217;s desire to provide handicapped persons additional work opportunities, hired through the Utah state-supported Work Activity Center. &#160;The Company utilizes independent consultants, some of which were prior employees. Almost all of UTMD&#8217;s internally-manufactured devices are made either in Utah or in Ireland. In Ireland, the average tenure of full-time employees declined from 15 years to 10 years as a result of a significant increase in production employees in 2021. &#160;In the U.S., the average tenure of full-time employees increased from 15 years to 16 years. At the end of 2021, the average tenure with the Company of the combined 166 full-time employees in the U.S. and Ireland is now 14 years. This experience conveys an important benefit due to the level of training required to produce consistently high quality medical devices and appreciation of how UTMD&#8217;s devices provide unique benefits for clinicians and patients. &#160;The Company's continued success will depend to a large extent upon its ability to retain skilled and experienced employees and consultants. &#160;No assurances can be given that the Company will be able to retain or attract such people in the future, although management is committed to providing an environment in which reliable, creative and high achieving people wish to work.&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>11</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>None of the Company's officers or directors is bound by restrictive covenants from prior employers that limit their ability to contribute to UTMD&#8217;s programs. &#160;All employees agree to a code of conduct and sign a strict confidentiality agreement as a condition of employment, and as consideration for receipt of stock option awards and participation in the annual profit-sharing bonus program. &#160;All employees participate in contemporaneous performance-based bonus programs. &#160;None of the Company's employees is represented by labor unions or other collective bargaining groups. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>PATENTS, TRADEMARKS AND TECHNOLOGY LICENSES</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The Company currently owns eight unexpired U.S. patents, numerous associated patents in sovereignties OUS, and is the licensee of certain other technology. There can be no assurance, however, that patents will be issued with respect to any pending applications, that marketable products will result from the patents or that issued patents can be successfully defended in a patent infringement situation. &#160;The Company also owns thirty-one registered trademarks which have achieved significant brand recognition. The Company believes that its trademarks and tradenames, many of which have become well known in the global medical community through decades of successful use of the associated medical devices, likely have and will continue to have substantially more intangible value than its patents. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The ability of the Company to achieve commercial success depends in part on the protection afforded by its patents and trademarks. &#160;However, UTMD believes that the protections afforded by patents and trademarks are less important &#160;to &#160;UTMD&#8217;s business, taken as a whole, &#160;than a medical device&#8217;s established incremental clinical utility, which may be dominated by a number of other factors including relative cost, ease of use, ease of training/adoption, perceived clinical value of different design features, risk of use in applicable procedures, the reliability of achieving a desired outcome in the hands of different users and market access to potential users. &#160;In cases where competitors introduce products that may infringe on UTMD&#8217;s technology or trademarks, the Company has an obligation to its stockholders to defend its intangible property to the extent that it can afford to do so, and that it is material to the Company&#8217;s success. The Company must also defend itself if competitors allege that UTMD may be infringing their technologies.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>As a matter of policy, UTMD has acquired and will continue to acquire the use of technology from third parties that can be synergistically combined with UTMD proprietary product ideas. &#160;During 2021, royalties included in cost of goods sold were $137. &#160;Other royalties have been previously paid as a lump sum, or were incorporated into the price of acquisitions or into the cost of purchased components which practice certain patents of third parties. &#160;Also as a matter of policy, UTMD licenses its proprietary technology to others in circumstances where licensing does not directly compete with UTMD's own marketing initiatives. &#160;During 2021 the Company received $15 in royalty income compared to $20 in 2020 and $6 in 2019. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>GOVERNMENT REGULATION</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD and its subsidiaries&#8217; products and manufacturing processes are subject to regulation by the U.S. Food &amp; Drug Administration (&#8220;FDA&#8221;), as well as many other regulatory entities globally. &#160;The FDA has authority to regulate the marketing, manufacturing, labeling, packaging and distribution of medical devices in the U.S. &#160;Requirements exist under other federal laws and under state, local and foreign statutes that apply to the manufacturing and marketing of the Company's medical devices.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>All manufacturers of medical devices must register with the FDA and list all medical devices produced by them. &#160;&#160;In addition, prior to commercial distribution of some devices for human use, a manufacturer must file a notice with the FDA, setting forth certain information regarding the safety and effectiveness of the device that is acceptable in content to the FDA.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-indent:9pt'>Devices which are classified in Class I are subject only to the general controls concerning adulteration, misbranding, good manufacturing practices, record keeping and reporting requirements. &#160;Devices classified in Class II must, in addition, comply with special controls or performance standards promulgated by the FDA. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Except for the Filshie Clip System, all of UTMD&#8217;s present devices are unclassified, Class I or Class II devices. The Filshie Clip System is a Class III device which has more stringent regulatory controls. The Company is in compliance with all applicable U.S. regulatory standards including CFR Part 820, the FDA Quality System Regulation (QSR) effective in 1997, also known as cGMPs (current good manufacturing practices). &#160;The Company&#8217;s most recent Utah FDA QSR inspection was in July 2014, which did not result in the issuance of any FDA-483 observations. &#160;In 2019, UTMD&#8217;s manufacturing facilities in Utah were audited and certified by a recognized authorized auditing organization under the new Medical Device Single Audit Program (MDSAP). In most circumstances, the new MDSAP eliminates the need for FDA QSR inspections. The Company&#8217;s most recent UK FDA QSR inspection was in July 2019, which also did not result in the issuance of any FDA-483 observations.&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>12</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In 1994, UTMD received certification of its quality system under the ISO9001/EN46001 standards (&#8220;ISO&#8221; stands for &#8220;International Organization of Standardization&#8221;) which it maintained until December 2003. &#160;In October 2003, UTMD&#8217;s Utah facility was certified under the more stringent ISO13485 standard for medical devices. UTMD&#8217;s Ireland facility was certified under the concomitant ISO13488 standard. &#160;In July 2006, both facility ISO certifications were upgraded to the even more stringent ISO13485:2003 standard. &#160;Currently, UTMD&#8217;s facilities in the UK, Ireland and Utah are all certified under the most recent ISO13485:2016 standard. &#160;In 2020, UTMD&#8217;s manufacturing facilities in Ireland and UK were audited and certified by a recognized authorized auditing organization under the MDSAP. The MDSAP offers an &#8220;all-in-one&#8221; inspection regime to accommodate the quality system requirements of Australia, Brazil, Canada, USA and Japan.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD and Femcare remain on a continuous periodic audit schedule by its independent notified body and authorized MDSAP auditing organization in order to stay current with international regulatory standards, and retain its certifications. UTMD has received CE Mark certifications (demonstrates proof of compliance with the European Community&#8217;s ISO standards) for all of its major products. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>SOURCES AND AVAILABILITY OF RAW MATERIALS</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Most of the components which the Company purchases from various vendors are available from a number of sources and in a number of locations worldwide. That notwithstanding, the Company maintains safety stocks that anticipate potential disruption to its supply chain from changes in government policies including tariffs, as well as disruptions resulting from the COVID-19 pandemic, including the time required to source and qualify new vendors. &#160;Fortunately, given availability of its significant cash reserves, UTMD has the financial ability to mitigate supply chain risk by carrying extra inventories during periods of increased uncertainty. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Alternative sourcing of various components is continually underway. &#160;Vendors are qualified by UTMD&#8217;s Quality Assurance. In the few cases where the Company has a sole source, it either maintains or has agreement with the supplier to maintain excess safety stocks that would cover the time required to develop and qualify a new source. The Company has a vendor quality monitoring program that includes routinely checking incoming material for conformance to specifications, as required per written procedures. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>U.S. EXPORTS</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD regards the OUS marketplace as an important element of its growth strategy. UTMD is keenly aware that not only are OUS markets different from the U.S. market, but also that each country has its own set of driving influences that affects the dynamics of the nature of care given and medical devices used. &#160;The Company operates four OUS facilities; in Romsey, Hampshire, England; in Castle Hill, NSW, Australia; in Mississauga, Ontario, Canada and in Athlone, County Westmeath, Ireland. &#160;These facilities offer a number of advantages: 1) from a marketing point of view, better response to Europe, Asia, Africa and Australia customers, including a better understanding of customer needs, less costly distribution and, in the EU, duty-free access to 500 million patients; 2) from a regulatory point of view, faster new product introductions; and 3) from a manufacturing point of view, reduced dependence on one manufacturing site and increased capacity for meeting customer needs.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Total 2021 trade revenues in USD terms from customers OUS were $18,395 (38% of total consolidated USD sales) compared to $16,312 (39% of sales) in 2020 and $19,411 (41% of total sales) in 2019. &#160;OUS trade sales (U.S. exports) from the U.S. to OUS customers were $3,994 in 2021, $4,626 in 2020 and $4,322 in 2019. &#160;U.S. exports represented 22%, 28% and 22% of total OUS trade sales in 2021, 2020 and 2019, respectively. &#160;The U.S. export numbers exclude Utah intercompany sales of components and finished devices to UTMD foreign subsidiaries, which then distribute Utah-made components and finished devices as part of their sales to OUS customers.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>For sales by OUS geographic area, please see note 9 to the Consolidated Financial Statements.&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>13</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>BACKLOG</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Backlog is defined as orders received and accepted by UTMD which have not shipped yet. &#160;As a supplier of primarily disposable hospital products, the nature of UTMD&#8217;s non-distributor and non-OEM business requires fast response to customer orders. &#160;Virtually all direct shipments to end-user facilities are accomplished within a few days of acceptance of purchase orders. Consequently, UTMD&#8217;s backlog at any point in time is comprised mainly of orders from OEM and independent distributors, which purchase in larger quantities, at less frequent intervals with fluctuating order patterns. Backlog shippable in less than 90 days was $4,956 as of January 1, 2022 compared to $3,008 as of January 1, 2021 and $1,627 as of January 1, 2020. &#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>SEASONAL ASPECTS</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The Company's business is generally not affected by seasonal factors, but it is affected by uneven purchasing patterns of OEM customers and independent distributors.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>PRODUCT LIABILITY RISK MANAGEMENT</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The risk of product liability lawsuits is a negative factor in the medical device industry because devices are frequently used in inherently risky situations to help clinicians achieve a more positive outcome than what might otherwise be the case. &#160;In any lawsuit against a company where an individual plaintiff suffers permanent physical injury, a possibility of a large award for damages exists whether or not a causal relationship exists. However, no such damages have been awarded against UTMD in its 44-year history of shipping many millions of devices. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD is self-insured for product liability risk, and reserves funds against its current performance on an ongoing basis to provide for its costs of defense should any lawsuits be filed. UTMD was named as a defendant on six product liability lawsuits over the time span of the last twenty-nine years, excluding the Filshie Clip System acquired eleven years ago. Four of the six lawsuits involved a patient injury related to operative vaginal deliveries where a UTMD VAD birthing cup or hand pump was used. The VADS devices in all four cases did conform to specifications. UTMD was ultimately dismissed as a defendant in all four VADS lawsuits, and legal costs were not material to performance. In a fifth lawsuit, regarding the use of EndoCurette, there was no evidence of patient injury. The lawsuit was settled in 2010 for an immaterial amount to avoid the diversion of management time and substantial costs of litigation, even though UTMD was confident that the case was without merit. In a sixth, UTMD was brought into the lawsuit by a defendant physician, speculating a design deficiency in a Finesse electrosurgical generator (ESU) which had been in use for eighteen years before the injury event, and used successfully by the same physician in multiple procedures after the event. The injured patient did not allege any fault by UTMD. &#160;The case was settled in 2012 without any UTMD involvement or liability. &#160;The Company&#8217;s average cost of defense of the six lawsuits was $15/year, well below the deductible level of product liability insurance policies and hundreds of thousands of dollars less than product liability insurance premiums. &#160;In its 44 year history of shipping over 50 million finished devices used in critical care and over 400 million components, there has never been a product liability judgment against UTMD. &#160;This experience validates that the most important aspect of product liability risk management is the safe design and reliable integrity of manufactured products. The best defense the Company believes that it has is the consistent conformance to specifications of its proven safe and effective products. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'> &#160;&#160;Prior to late 2021, there were three Filshie Clip System lawsuits since UTMD acquired Femcare in 2011, all of which were dismissed with prejudice prior to the conclusion of discovery. The average annual cost of all Filshie Clip System lawsuits since 2011 up to late 2021 was $7 per year (less than $25 per lawsuit to achieve resolution). &#160;In late 2021, Femcare was added as a defendant in a clip migration lawsuit in Texas, which now has expanded to five other states with a total of seven lawsuits as plaintiffs&#8217; lawyers have sought to solicit and recruit claimants in other states. As there is no basis for a claim of a poor device design which is approved by the U.S. FDA, no evidence of defective clips implanted in the patients and no lack of proper disclosure to physicians who have used Filshie Clips for decades in millions of patients, the current lawsuits, which are currently in the early stages of discovery and have not been litigated yet, are clearly without merit. &#160;Although the cost of defense will be higher than UTMD&#8217;s historical average, the Company believes that they should be resolved without a material impact on UTMD&#8217;s consolidated financial performance. There has never been an adverse judgment against Femcare in over 13 million Filshie Clip implantations over a period of 39 years.</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Other than Filshie Clip System claims, there have been no product liability lawsuits for any UTMD device during the last ten years. &#160;Except for the six non-Filshie Clip System lawsuits described above, there have been no other product liability claims filed over the last 29 years after distribution and use of over 20 million critical care and surgical finished devices. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In summary, since 1993, during which time over one hundred million finished devices and OEM components were manufactured and distributed by UTMD and its subsidiaries, there have been no adverse judgments resulting from a claim of defect in UTMD&#8217;s or its subsidiaries&#8217; designs or manufacture of products, or a fault in informational materials. &#160;In the current tort system, particularly in the U.S., meritless product liability cases do get filed where aggressive attorneys calculate that a company will find it cheaper to settle for what they consider a nominal amount in lieu of potentially substantial defense costs of discovery and going to court. &#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>14</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>FORWARD LOOKING INFORMATION </span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>This report contains certain forward-looking statements and information relating to the Company that are based on the beliefs of management as well as assumptions made by management based on information currently available. &#160;When used in this document, the words &#8220;anticipate,&#8221; &#8220;believe,&#8221; &#8220;project,&#8221; &#8220;estimate,&#8221; &#8220;expect,&#8221; &#8220;intend&#8221; and similar expressions, as they relate to the Company or its management, are intended to identify forward-looking statements. &#160;Such statements reflect the current view of the Company respecting future events and are subject to certain risks, uncertainties and assumptions, including the risks and uncertainties stated throughout the document. &#160;Although the Company has attempted to identify important factors that could cause the actual results to differ materially, there may be other factors that cause the forward statement not to come true as anticipated, believed, projected, expected, or intended. &#160;Should one or more of these risks or uncertainties materialize, or should underlying assumptions prove incorrect, actual results may differ materially from those described herein as anticipated, believed, projected, estimated, expected or intended. &#160;Financial estimates are subject to change and are not intended to be relied upon as predictions of future operating results, and the Company assumes no obligation to update or disclose revisions to those estimates.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a6'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 1A &#8211;&#160;RISK FACTORS</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Legislative or executive order healthcare interference in the United </span>States renders the U.S. medical device marketplace unpredictable. A fully government-run healthcare system would likely eliminate healthcare consumer choice as well as commercial incentives for innovation. &#160;Restrictions on &#8220;nonessential&#8221; medical procedures during a pandemic reduce the demand for certain of UTMD&#8217;s medical devices.</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><span style='border-bottom:1px solid #000000'>Increasing regulatory burdens, including premarketing approval delays, may result in significant loss of revenue, unpredictable costs and loss of management focus on developing and marketing products that improve the quality of healthcare: </span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Thousands of small focused medical device manufacturers including UTMD that do not have the overhead structure that the few large medical device companies can afford are increasingly burdened with bureaucratic and underqualified regulator demands that are not reasonably related to assuring the safety or effectiveness of the devices that they provide. &#160;Premarketing submission administrative burdens, and substantial &#8220;user fees&#8221; or notified body review fees, represent a significant non-clinical and/or non-scientific barrier to new product introduction, resulting in lack of investment or delays to revenues from new or improved devices. &#160;The risks associated with such circumstances relate not only to substantial out-of-pocket costs, including potential litigation in millions of dollars, but also loss of business and a diversion of attention of key employees for an extended period of time from managing their normal responsibilities, particularly in new product development and routine quality assurance activities.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Group Purchasing Organizations (GPOs) in the U.S. add non-productive costs, weaken the Company&#8217;s marketing and sales efforts and cause lower revenues by restricting access: &#160;</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>GPOs, theoretically acting as bargaining agents for member hospitals, but actually collecting revenues from the companies that they are negotiating with, have made a concerted effort to turn medical devices that convey special patient safety advantages and better health outcomes, like UTMD&#8217;s, into undifferentiated commodities. GPOs have been granted an antitrust exemption by the U.S. Congress. Otherwise, their business model based on &#8220;kickbacks&#8221; would be a violation of law. &#160;Despite rhetoric otherwise, these bureaucratic entities do not recognize or understand the overall cost of care as it relates to safety and effectiveness of devices, and they create a substantial administrative burden that is primarily driven by collection of their administrative fees.&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><span style='border-bottom:1px solid #000000'>The Company&#8217;s business strategy may not be successful in the future:</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:8.55pt'></kbd>As the level of complexity and uncertainty in the medical device industry increases, evidenced, for example, by the unpredictable and overly cumbersome regulatory environment, the Company&#8217;s views of the future and product/ market strategy may not yield financial results consistent with the past.&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><span style='border-bottom:1px solid #000000'>As the healthcare industry becomes increasingly bureaucratic it puts smaller companies like UTMD at a competitive disadvantage: &#160;</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>An aging population is placing greater burdens on healthcare systems, particularly hospitals. The length of time and number of administrative steps required in adopting new products for use in hospitals has grown substantially in recent years. &#160;Smaller companies like UTMD typically do not have the administrative resources to deal with broad new administrative requirements, resulting in either loss of revenue or increased costs. &#160;As UTMD introduces new products it believes are safer and more effective, it may find itself excluded from certain clinical users because of the existence of long term supply agreements for preexisting products, particularly from competitors which offer hospitals a broader range of products and services. &#160;Restrictions used by hospital administrators to limit clinician involvement in device purchasing decisions makes communicating UTMD&#8217;s clinical advantages more difficult. &#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>15</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><span style='border-bottom:1px solid #000000'>A product liability lawsuit could result in significant legal expenses and a large award against the Company: </span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD&#8217;s devices are frequently used in inherently risky situations to help physicians achieve a more positive outcome than what might otherwise be the case. &#160;In any lawsuit where an individual plaintiff suffered permanent physical injury, the possibility of a large award for damages exists whether or not a causal relationship exists.&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><span style='border-bottom:1px solid #000000'>The Company&#8217;s reliance on third party distributors in some markets may result in less predictable revenues:</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD&#8217;s distributors have varying expertise in marketing and selling specialty medical devices. &#160;They also sell other devices that may result in less focus on the Company&#8217;s products. &#160;In some countries, notably China, Pakistan and India not subject to similarly rigorous standards, a distributor of UTMD&#8217;s products may eventually become a competitor with a cheaper but lower quality version of UTMD&#8217;s devices.&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><span style='border-bottom:1px solid #000000'>The loss of one or more key employees could negatively affect UTMD performance:</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In a small company with limited resources, the distraction or loss of key personnel at any point in time may be disruptive to performance. &#160;The Company&#8217;s benefits programs are key to recruiting and retaining talented employees. &#160;An increase in UTMD&#8217;s employee healthcare plan costs, for example, may cause the Company to have to reduce coverages which in turn represents a risk to retaining key employees.&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><span style='border-bottom:1px solid #000000'>Fluctuations in foreign currencies relative to the USD can result in significant differences in period-to-period financial results:</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Since a significant portion of UTMD&#8217;s sales are invoiced in foreign currencies and consolidated financial results are reported in USD terms, a stronger USD can have negative revenue effects. Conversely, a weaker USD would increase foreign subsidiary operating costs in USD terms. For the portion of sales to foreign entities made in fixed USD terms, a stronger USD makes the devices more expensive and weakens demand. &#160;For the portion invoiced in a foreign currency, not only USD-denominated sales are reduced, but also gross profits may be reduced because finished distributed devices and/or U.S. made raw materials and components are likely being purchased in fixed USD.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Trade restrictions and /or tariffs resulting from changing government trade policies have the potential to disrupt UTMD&#8217;s supply chain.</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>The COVID-19 pandemic could continue to disrupt UTMD&#8217;s supply chain or interfere with normal business operations due to the loss of employee availability and rapidly rising input costs.</span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>16</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a7'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 1B &#8211;&#160;UNRESOLVED STAFF COMMENTS</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>None</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a8'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 2 - PROPERTIES</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Office and Manufacturing Facilities.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD is a vertically-integrated manufacturing company. &#160;Capabilities include silicone and plastics-forming operations including injection molding, insert and over-molding, thermoforming and extrusion; sensor production; manual and automated assembly of mechanical, electrical and electronic components; parts printing; various testing modalities; advanced packaging in clean room conditions; and a machine shop for mold-making and fabrication of assembly tools and fixtures. &#160;Capabilities also include an R&amp;D laboratory for both electronic and chemical processes, software development resources, communications and computer systems networked real time OUS, and administrative offices.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD owns all of its property and facilities with the exception of a long-term lease with 10 years remaining on one section of its Midvale parking lot. As of the beginning of 2022, the Company's operations were located in 105,000 square feet of facilities in Midvale, Utah, a 77,000 square foot facility in Athlone, County Westmeath, Ireland, a 38,600 square foot facility in Romsey, Hampshire, England, a 3,200 square foot facility in Castle Hill NSW, Australia, and a 4,700 square foot facility in Mississauga, Ontario, Canada. &#160;Manufacturing is currently carried out primarily in the Utah and Ireland facilities. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a9'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 3 - LEGAL PROCEEDINGS</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The Company may be a party from time to time in litigation incidental to its business. Presently, there is no litigation or threatened litigation for which the Company or its subsidiaries expect the outcome will be material to consolidated financial results. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a10'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 4 - RESERVED</b></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>17</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a11'></a><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'><b>PART II</b></span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a12'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 5 - MARKET FOR REGISTRANT'S COMMON EQUITY, RELATED STOCKHOLDER MATTERS AND ISSUER PURCHASES OF EQUITY SECURITIES</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Market Information.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD's common stock trades on the NASDAQ Global Market (symbol:UTMD). &#160;The following table sets forth the high and low sales price information as reported by NASDAQ for the periods indicated:&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:0pt'> &#160;&#160;</kbd><kbd style='margin-left:31.5pt'></kbd> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr style='height:1pt'><td valign='top' style='width:29.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td colspan='4' valign='top' style='width:34.1%;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='4' valign='top' style='width:33.8%;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:29.12%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:3.14%;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.92%;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>High</span></p>
</td><td valign='top' style='width:3.14%;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.9%;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Low</span></p>
</td><td valign='top' style='width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:2.98%;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.92%;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>High</span></p>
</td><td valign='top' style='width:2.98%;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.92%;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Low</span></p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:29.12%'><p style='font:10pt Times New Roman;margin:0'>1st Quarter</p>
</td><td valign='top' style='background-color:#CCEEFF;width:3.14%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:13.92%'><p style='font:10pt Times New Roman;margin:0'>95.64</p>
</td><td valign='top' style='background-color:#CCEEFF;width:3.14%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:13.9%'><p style='font:10pt Times New Roman;margin:0'>82.18</p>
</td><td valign='top' style='background-color:#CCEEFF;width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:13.92%'><p style='font:10pt Times New Roman;margin:0'>109.99</p>
</td><td valign='top' style='background-color:#CCEEFF;width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:13.92%'><p style='font:10pt Times New Roman;margin:0'>75.33</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:29.12%'><p style='font:10pt Times New Roman;margin:0'>2nd Quarter</p>
</td><td valign='top' style='width:3.14%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.92%'><p style='font:10pt Times New Roman;margin:0'>90.46</p>
</td><td valign='top' style='width:3.14%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.9%'><p style='font:10pt Times New Roman;margin:0'>81.01</p>
</td><td valign='top' style='width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.92%'><p style='font:10pt Times New Roman;margin:0'>109.00</p>
</td><td valign='top' style='width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.92%'><p style='font:10pt Times New Roman;margin:0'>77.27</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:29.12%'><p style='font:10pt Times New Roman;margin:0'>3rd Quarter</p>
</td><td valign='top' style='background-color:#CCEEFF;width:3.14%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:13.92%'><p style='font:10pt Times New Roman;margin:0'>97.79</p>
</td><td valign='top' style='background-color:#CCEEFF;width:3.14%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:13.9%'><p style='font:10pt Times New Roman;margin:0'>84.60</p>
</td><td valign='top' style='background-color:#CCEEFF;width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:13.92%'><p style='font:10pt Times New Roman;margin:0'>93.82</p>
</td><td valign='top' style='background-color:#CCEEFF;width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:13.92%'><p style='font:10pt Times New Roman;margin:0'>77.22</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:29.12%'><p style='font:10pt Times New Roman;margin:0'>4th Quarter</p>
</td><td valign='top' style='width:3.14%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.92%'><p style='font:10pt Times New Roman;margin:0;text-align:justify'>133.87</p>
</td><td valign='top' style='width:3.14%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.9%'><p style='font:10pt Times New Roman;margin:0'>88.29</p>
</td><td valign='top' style='width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.92%'><p style='font:10pt Times New Roman;margin:0'>94.87</p>
</td><td valign='top' style='width:2.98%'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:13.92%'><p style='font:10pt Times New Roman;margin:0'>78.90</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Stockholders.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The number of beneficial stockholders of UTMD&#8217;s common stock as of March 6, 2022 was at least 2,000.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Dividends.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The following sets forth cash dividends paid during the past two years:&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr style='height:1pt'><td valign='top' style='width:285.8pt'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Record Date</span></p>
</td><td valign='top' style='width:285.85pt'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Payable Date</span></p>
</td><td valign='top' style='width:119.1pt'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Per Share Amount</span></p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:285.8pt'><p style='font:10pt Times New Roman;margin:0'>December 13, 2019</p>
</td><td valign='top' style='background-color:#CCEEFF;width:285.85pt'><p style='font:10pt Times New Roman;margin:0'>January 3, 2020</p>
</td><td valign='top' style='background-color:#CCEEFF;width:119.1pt'><p style='font:10pt Times New Roman;margin:0'>0.280</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:285.8pt'><p style='font:10pt Times New Roman;margin:0'>March 13, 2020</p>
</td><td valign='top' style='width:285.85pt'><p style='font:10pt Times New Roman;margin:0'>April 2, 2020</p>
</td><td valign='top' style='width:119.1pt'><p style='font:10pt Times New Roman;margin:0'>0.280</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:285.8pt'><p style='font:10pt Times New Roman;margin:0'>June 17, 2020</p>
</td><td valign='top' style='background-color:#CCEEFF;width:285.85pt'><p style='font:10pt Times New Roman;margin:0'>July 3, 2020</p>
</td><td valign='top' style='background-color:#CCEEFF;width:119.1pt'><p style='font:10pt Times New Roman;margin:0'>0.280</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:285.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>September 15, 2020</p>
</td><td valign='top' style='width:285.85pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>October 5, 2020</p>
</td><td valign='top' style='width:119.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>0.280</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:285.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>December 15, 2020</p>
</td><td valign='top' style='background-color:#CCEEFF;width:285.85pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>January 5, 2021</p>
</td><td valign='top' style='background-color:#CCEEFF;width:119.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>0.285</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:285.8pt'><p style='font:10pt Times New Roman;margin:0'>March 17, 2021</p>
</td><td valign='top' style='width:285.85pt'><p style='font:10pt Times New Roman;margin:0'>April 2, 2021</p>
</td><td valign='top' style='width:119.1pt'><p style='font:10pt Times New Roman;margin:0'>0.285</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:285.8pt'><p style='font:10pt Times New Roman;margin:0'>June 15, 2021</p>
</td><td valign='top' style='background-color:#CCEEFF;width:285.85pt'><p style='font:10pt Times New Roman;margin:0'>July 6, 2021</p>
</td><td valign='top' style='background-color:#CCEEFF;width:119.1pt'><p style='font:10pt Times New Roman;margin:0'>0.285</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:285.8pt'><p style='font:10pt Times New Roman;margin:0'>September 16, 2021</p>
</td><td valign='top' style='width:285.85pt'><p style='font:10pt Times New Roman;margin:0'>October 5, 2021</p>
</td><td valign='top' style='width:119.1pt'><p style='font:10pt Times New Roman;margin:0'>0.285</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:285.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>December 15, 2021</p>
</td><td valign='top' style='background-color:#CCEEFF;width:285.85pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>December 29, 2021</p>
</td><td valign='top' style='background-color:#CCEEFF;width:119.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>2.000</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:285.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:285.85pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:119.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td></tr>
<tr style='height:1pt'><td colspan='2' valign='top' style='background-color:#CCEEFF;width:571.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020 total cash dividends paid per share</p>
</td><td valign='top' style='background-color:#CCEEFF;width:119.1pt'><p style='font:10pt Times New Roman;margin:0'>$ 1.120</p>
</td></tr>
<tr style='height:1pt'><td colspan='2' valign='top' style='width:571.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021 total cash dividends paid per share</p>
</td><td valign='top' style='width:119.1pt'><p style='font:10pt Times New Roman;margin:0'>$ 3.140</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Issuer Purchases of Equity Securities.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD did not purchase any of its own securities in 2021. &#160;UTMD purchased 80,000 shares of its common stock for $6,426 including commissions and fees in March 2020 and 7,000 shares of its common stock for $551 including commissions and fees in September 2020. &#160;&#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>18</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a13'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 6 - SELECTED FINANCIAL DATA</b></p>
<p style='font:10pt Times New Roman;margin:0'>Dollar amounts are in thousands, except per share data.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The following selected consolidated financial data of UTMD and its subsidiaries for the five years ended December 31, 2021, are derived from the audited financial statements and notes of UTMD and its subsidiaries, certain of which are included in this report. &#160;The selected consolidated financial data should be read in conjunction with UTMD&#8217;s Consolidated Financial Statements and the notes included elsewhere in this report.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td colspan='9' valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>Year Ended December 31</span></p>
</td></tr>
<tr><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2018</span></p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2017</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>Net Sales</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$49,054</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$42,178</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$46,904</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$41,998</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$41,414</p>
</td></tr>
<tr><td valign='top'><p style='font:10pt Times New Roman;margin:0'>Net Income</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>14,788</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>10,798</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>14,727</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>18,555</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>8,505</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>Earnings Per Common Share (Diluted)</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>4.04</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>2.94</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>3.94</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>4.95</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>2.28</p>
</td></tr>
<tr><td valign='top'><p style='font:10pt Times New Roman;margin:0'>Total Assets</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>115,636</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>111,745</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>109,787</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>99,768</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>92,745</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>Working Capital</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>69,412</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>58,471</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>51,438</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>55,643</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>43,909</p>
</td></tr>
<tr><td valign='top'><p style='font:10pt Times New Roman;margin:0'>Long-term Debt</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>0</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>0</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>0</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>0</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top'><p style='font:10pt Times New Roman;margin:0;text-align:right'>0</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>Cash Dividends Per Common Share</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>3.140</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>1.120</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>1.100</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>1.085</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF'><p style='font:10pt Times New Roman;margin:0;text-align:right'>1.065</p>
</td></tr>
</table>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>19</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a14'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 7 - MANAGEMENT'S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS</b> </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-align:justify'>Currency amounts are in thousands except per-share amounts and where noted. &#160;Currencies are abbreviated as follows: the U.S. Dollar (USD or $), the Great Britain Pound (GBP or &#163;), the Euro (EUR or &#8364;), the Australian Dollar (AUD or A$), the New Zealand Dollar (NZD) and the Canadian Dollar (CAD or C$).</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The following comments should be read in conjunction with the accompanying financial statements. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Overview</span>.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The 2021 year financial results demonstrate Utah Medical Products, Inc.&#8217;s (Nasdaq: UTMD&#8217;s) continuing performance improvement despite many challenges related to the COVID-19 pandemic including on-again/off-again restrictions on so-called nonessential medical procedures, supply chain disruption, high inflation on raw materials, freight and labor costs as well as a continued shortage of labor from higher employee turnover. &#160;Because of UTMD&#8217;s unusual dip in 2020 financial performance, UTMD continues to report its income statement results compared to the same periods not only for 2021 compared to 2020, but also for 2021 compared to the pre-pandemic year of 2019. &#160;In that regard, the Company exceeded its stated objective for 2021 to try to fully recover back to its 2019 financial performance. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:2pt;margin-right:-6.5pt'><kbd style='margin-left:9pt'></kbd>UTMD management believes that the presentation of three years of annual income statement comparisons provides meaningful supplemental information to both management and investors due to the impact of &#160;several factors related to the COVID-19 pandemic including economic variations affecting foreign currency exchange rates for sales invoiced in foreign currencies, uneven customer demand from the timing of ups and downs in government restrictions on &#8220;nonessential&#8221; medical procedures, supply disruptions and inflation in input costs.&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:184.9pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'><span style='border-bottom:1px solid #000000'>Consolidated Income Statement</span></p>
</td><td valign='top' style='width:80.25pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:106.4pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2021 Compared to 2020</span></p>
</td><td valign='top' style='width:106.4pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:106.4pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2021 Compared to 2019</span></p>
</td><td valign='top' style='width:106.4pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:184.9pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Worldwide Revenues</p>
</td><td valign='top' style='background-color:#CCEEFF;width:80.25pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$ 49,054</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+16.3%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$ 42,178</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ 4.6%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$ 46,904</p>
</td></tr>
<tr><td valign='top' style='width:184.9pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Gross Profit</p>
</td><td valign='top' style='width:80.25pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;30,917</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+21.0%</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;&#160;25,548</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ 4.9%</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;&#160;29,466</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:184.9pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Operating Income</p>
</td><td valign='top' style='background-color:#CCEEFF;width:80.25pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;18,880</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+37.7%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;&#160;13,708</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ 7.1%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;&#160;17,633</p>
</td></tr>
<tr><td valign='top' style='width:184.9pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Earnings Before Income Tax</p>
</td><td valign='top' style='width:80.25pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;19,061</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+37.7%</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;&#160;13,840</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ 6.6%</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;&#160;17,884</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:184.9pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Net Income (US GAAP)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:80.25pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;14,788</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+37.0%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;&#160;10,798</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ 0.4%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;&#160;14,727</p>
</td></tr>
<tr><td valign='top' style='width:184.9pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Earnings Per Share (US GAAP)</p>
</td><td valign='top' style='width:80.25pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> $ 4.041</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+37.4%</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;$ 2.941</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ 2.6%</p>
</td><td valign='top' style='width:106.4pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> &#160;$ 3.939</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin-top:2pt;margin-bottom:0pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:2pt;margin-bottom:0pt'><kbd style='margin-left:9pt'></kbd>For perspective, as stockholders may recall, total worldwide revenues for the 2020 pandemic year were 10% lower than in pre-pandemic 2019. &#160;Sales outside the U.S. (OUS) were more negatively affected by the reaction to the pandemic than inside the U.S., and recovered more slowly in 2021. Direct to end-user sales, which drive UTMD&#8217;s overall profitability, were 14% lower for the 2020 pandemic year. &#160;Operating Income in 2020 was 22% lower than in pre-pandemic 2019. &#160;UTMD maintained its manufacturing operations in the U.S. and Ireland throughout the pandemic, without government assistance, in order to support important clinical needs of patients. During the pandemic, UTMD protected its critical mass of overhead resources and did not adjust relative to the decline in sales, which proved to be a good decision given 2021 results and future resource needs. &#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;margin-right:-6.3pt'><kbd style='margin-left:9pt'></kbd>A comparison of 2021 bottom line results with the results of 2020 and 2019, according to U.S. Generally Accepted Accounting Principles (US GAAP), is affected by some income tax provision adjustments not related to normal operations: 1) &#160;in 4Q 2019, net income was <span style='border-bottom:1px solid #000000'>increased</span> $582 ($.156 increase in EPS) as a result of final adjustments made to state of Utah tax estimates following the December 2017 U.S. &#8220;Tax Cuts and Jobs Act&#8221; (TCJA), enacted in late 2017; &#160;2) in 2Q 2020, net income was <span style='border-bottom:1px solid #000000'>decreased</span> $225 ($.061 decrease in EPS) by a long term deferred tax liability increase on the balance of Femcare intangible assets (the amortization of which is not tax-deductible in the UK) as a result of a delay in the enacted UK income tax rate reduction, and 3) in 2Q 2021, net income was <span style='border-bottom:1px solid #000000'>decreased</span> $390 ($.107 decrease in EPS) by a long term deferred tax liability increase on the balance of Femcare intangible assets (the amortization of which is not tax-deductible in the UK) as a result of an enacted increase in the UK income tax rate effective in 2023. &#160;The 2020 $225 increase in deferred UK taxes over the following six years, and the 2021 $390 increase in deferred UK taxes from 2023 through 2026, according to US GAAP, must be booked in the quarter in which the tax law change was enacted. The UK decided to not reduce its corporate income tax rate from 19% to 17% beginning in 2Q 2020, as was previously enacted, and then in 2Q 2021 decided to increase its corporate income rate to 25% as of April 1, 2023. &#160;UTMD management believes that the presentation of results excluding the unfavorable deferred tax liability adjustment to its 2020 and 2021 net income and the favorable U.S. tax-related adjustment to 2019 net income provides meaningful supplemental information to both management and investors that is more clearly indicative of UTMD&#8217;s operating results in 2021 compared to 2020 and 2019. &#160;Please note that the non-US GAAP exclusions <span style='border-bottom:1px solid #000000'>only</span> affects Net Income and Earnings Per Share. &#160;All other income statement categories at and above the EBT line were unaffected by the UK tax rate adjustments.&#160;</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:2pt;text-indent:9pt'>Excluding the 2021 and 2020 deferred tax liability increases and concomitant &#8220;one-time&#8221; income statement tax provision increase resulting from the enactment of the UK corporate income tax changes, and favorable tax provision adjustment in 2019 related to the U.S. TCJA, UTMD&#8217;s non-US GAAP Net Income and Earnings Per Share (EPS) percentage changes follow:</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:163.5pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'><span style='border-bottom:1px solid #000000'>Consolidated Income Statement</span></p>
</td><td valign='top' style='width:70.95pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:134.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2021 Compared to 2020</span></p>
</td><td valign='top' style='width:94.1pt;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:134.05pt;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2021 Compared to 2019</span></p>
</td><td valign='top' style='width:94.1pt;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:163.5pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Net Income (Non-US GAAP)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:70.95pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$15,178</p>
</td><td valign='top' style='background-color:#CCEEFF;width:134.05pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+37.7%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:94.1pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$11,023</p>
</td><td valign='top' style='background-color:#CCEEFF;width:134.05pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> + 7.3%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:94.1pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$14,145</p>
</td></tr>
<tr><td valign='top' style='width:163.5pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>EPS &#160;(Non-US GAAP)</p>
</td><td valign='top' style='width:70.95pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$4.147</p>
</td><td valign='top' style='width:134.05pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+38.2%</p>
</td><td valign='top' style='width:94.1pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$3.002</p>
</td><td valign='top' style='width:134.05pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'> + 9.6%</p>
</td><td valign='top' style='width:94.1pt;border:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$3.784</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Key profit margins (profits as a percentage of sales) in 2021 compared to 2020 and 2019 calendar years follow:&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:244.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:244.55pt'><p style='font:10pt Times New Roman;margin:0'>Gross Profit Margin (GPM)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>63.0%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>60.6%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>62.8%</p>
</td></tr>
<tr><td valign='top' style='width:244.55pt'><p style='font:10pt Times New Roman;margin:0'>Operating Income Margin</p>
</td><td valign='top' style='width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>38.5%</p>
</td><td valign='top' style='width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>32.5%</p>
</td><td valign='top' style='width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>37.6%</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:244.55pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>Income Before Tax Margin</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>38.9%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>32.8%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>38.1%</p>
</td></tr>
<tr><td valign='top' style='width:244.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'><i>Net Income Margin before  tax adjusts</i></p>
</td><td valign='top' style='width:136.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><i>30.9%</i></p>
</td><td valign='top' style='width:136.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><i>26.1%</i></p>
</td><td valign='top' style='width:136.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><i>30.2%</i></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:244.55pt'><p style='font:10pt Times New Roman;margin:0'>Net Income Margin per US GAAP</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>30.1%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>25.6%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>31.4%</p>
</td></tr>
<tr><td valign='top' style='width:244.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:136.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Profit margins in 2021 recovered to be consistent with UTMD&#8217;s pre-pandemic performance. In 2020, Gross Profit declined more than Sales as a result of less absorption of fixed overheads and marginal costs associated with the pandemic including personal protective equipment for employees, cleaning supplies, extra pay to encourage employees to come to work, pay continuation beyond normal sick pay and accrued vacation pay for those quarantined with symptoms or exposed to someone with symptoms, lower productivity as a result of social distancing and higher costs levied by some suppliers and service providers. &#160;In contrast and despite higher variable costs in 2021, UTMD&#8217;s 2021 Gross Profit increased more than Sales due to lower U.S. employee medical plan costs and improved labor productivity, in addition to better absorption of fixed manufacturing overhead expenses.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In 2020, Operating Income was leveraged down from lower GP compared to 2019 primarily due to the fixed $6,470 noncash expense resulting from amortizing Identifiable Intangible Assets (IIA) which resulted from the purchase of Femcare in 2011 and the remaining life of the U.S. exclusive distribution rights for the Filshie Clip System from CooperSurgical Inc. (CSI) in 2019. &#160;Also, the CSI IIA amortization expense in 2019 was only $6,089 because of a partial year of amortization plus a stronger USD in 2019 which reduced fixed GBP Femcare IIA amortization expense in USD terms. &#160;In contrast, the fixed IIA amortization expenses, which are included in General &amp; Administrative (G&amp;A) operating expense, were diluted by substantially higher sales in 2021 than in 2020 and a 6.6% stronger GBP in 2021 relative to the 2020 USD, which reduced the USD value of the fixed GBP Femcare IIA amortization expense. &#160;&#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Non-US GAAP Net Income and EPS increased the same as Operating Income in 2021 compared to 2020 because the consolidated total income tax rate prior to US GAAP tax adjustments was the same in both years at 20.4%.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-6.25pt'><kbd style='margin-left:9pt'></kbd>Measures of the Company&#8217;s liquidity and overall financial condition improved as of the end of 2021 compared to the end of 2020 with year-end working capital up 19% and Stockholders&#8217; Equity up 4% despite a $7,309 special dividend paid to stockholders near the end of 2021 which reduced both cash and Stockholders&#8217; Equity by that same amount. &#160;The improvement was the result of continued strong positive cash flow from normal operations. In total, UTMD paid $11,465 in stockholder cash dividends in 2021 compared to $4,116 in 2020. &#160;In 2020, the Company also used $6,976 of its cash to repurchase its shares. &#160;UTMD did not repurchase shares in 2021. &#160;The Company also used $552 in cash in 2021 to invest in new manufacturing equipment for a future need in addition to maintaining Property, Plant and Equipment (PP&amp;E) in good working order. &#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>20</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><kbd style='margin-left:7.2pt'></kbd>In spite of the combined $12,017 use of cash for stockholder dividends and capital expenditures, UTMD&#8217;s cash equivalent balances at the end of 2021 increased $9,384 to $60,974 from $51,590 at the end of 2020. &#160;Working capital increased $10,941 to $69,412 at the end of 2021 from $58,471 at the end of 2020. &#160;Total liabilities declined $425. The Company remained without debt. &#160;UTMD&#8217;s total debt ratio (total liabilities to total assets) was 7% at the end of 2021 compared to 8% at the end of 2020. &#160;Stockholders&#8217; Equity at the end of 2021 increased to $107,138 from $102,822 at the end of 2020, despite the $11,465 in 2021 cash dividends to stockholders which reduce Stockholders&#8217; Equity. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Productivity of Fixed Assets and Working Capital Assets</span>. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Assets</span>.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Year-end 2021 total consolidated assets were $115,636 comprised of $73,158 in current assets, $11,067 in consolidated net PP&amp;E and $31,412 in net intangible assets. &#160;This compares to $111,745 total assets at the end of 2020 comprised of $62,262 in current assets, $11,326 in consolidated net PP&amp;E and $38,157 in net intangible assets. Total asset turns (total consolidated sales divided by average total assets for the year) in 2021 were 43% compared to 38% in 2020, as sales increased faster than the increase in average assets. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:9.35pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;&#160;&#160;Current assets increased $10,896 due to the $9,384 increase in year-end cash and investments, $1,028 higher accounts and other receivables, $374 higher year-end inventories and $110 higher other current assets, all due to the higher sales activity. Year-end 2021 and 2020 cash and investment balances were $60,974 and $51,590, representing 53% and 46% of total assets, respectively. &#160;Net (after allowance for doubtful accounts) year-end trade accounts receivable (A/R) balances were $1,025 higher at the end of 2021 compared to 2020. This due to 4Q 2021 sales $903 higher than in 4Q 2020, and average days in A/R of 36 days based on 4Q trade sales instead of 31 days at the end of 2020. &#160;Average days in A/R from date of invoice of 36 days is well within UTMD&#8217;s objective. A/R over 90 days from invoice date rose from 1.7% of total A/R at the end of 2020 to 2.4% at the end of 2021. &#160;The Company believes any older A/R will be collected or are within its reserve balances for uncollectible amounts. &#160;Inventories at 2021 year-end were only 6% higher from the end of 2020, despite a 16% increase in annual shipments.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Working capital (current assets minus current liabilities) at year-end 2021 was 19% higher at $69,412 compared to $58,471 at year-end 2020. &#160;Consistent with Federal and State rules, the TCJA repatriation tax current liability at the end of 2021 was $220 compared to $80 at the end of 2020. &#160;The end of 2021 working capital exceeds UTMD&#8217;s needs for normal operations in an uncertain economic environment, funding of future organic growth and timely payment of accrued tax liabilities, in addition to allowing for substantial funding of any future acquisition without diluting stockholder interest, as well as continued payment of stockholder dividends and repurchase of UTMD shares. &#160;Despite a negative impact on Return on Stockholders&#8217; Equity of retaining a high cash balance, UTMD believes that in times of high economic uncertainty and change, maintaining substantial cash balances increases its likelihood of being able to take advantage of opportunities that will benefit stockholders in the longer term, and retain key resources that will help ensure continued excellent long term performance. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>December 31, 2021 net $11,067 total PP&amp;E includes Utah, Ireland and England manufacturing molds, production tooling and equipment, test equipment, and product development laboratory equipment. &#160;In addition, PP&amp;E includes computers and software, warehouse equipment, furniture and fixtures, facilities and real estate for all five locations in Utah, Ireland, UK, Canada and Australia. &#160;Manufacturing facilities in Utah, Ireland and the UK are standalone buildings with a combined 220,000 square feet on 15 acres of land. &#160;The distribution facilities in Australia and Canada with a combined 8,000 square feet are part of larger industrial condominiums. &#160;Management estimates the fair market value of the five owned facilities to be at least $25 million excluding the contents, the fungible value of which increases stockholder enterprise value relative to most of UTMD&#8217;s industry peers which lease their facilities.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Ending 2021 net consolidated PP&amp;E (depreciated book value of all fixed assets) declined $259 as a result of the combination of capital expenditures of $552, depreciation of $636 and the effect of foreign currency exchange (FX) rates on year-end foreign subsidiary asset balances. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The following end-of-year FX rates to USD were applied to assets and liabilities of each applicable foreign subsidiary:&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:426.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-113.4pt;margin-right:-0.9pt;text-align:right'><span style='border-bottom:1px solid #000000'>12-31-21</span></p>
</td><td valign='top' style='width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-180.9pt;text-align:right'><span style='border-bottom:1px solid #000000'>12-31-20</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:426.35pt'><p style='font:10pt Times New Roman;margin:0'>EUR</p>
</td><td valign='top' style='background-color:#CCEEFF;width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-113.4pt;text-align:right'>1.1377</p>
</td><td valign='top' style='background-color:#CCEEFF;width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-180.9pt;text-align:right'>1.2228</p>
</td></tr>
<tr><td valign='top' style='width:426.35pt'><p style='font:10pt Times New Roman;margin:0'>GBP</p>
</td><td valign='top' style='width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-113.4pt;text-align:right'>1.3536</p>
</td><td valign='top' style='width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-180.9pt;text-align:right'>1.3663</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:426.35pt'><p style='font:10pt Times New Roman;margin:0'>AUD</p>
</td><td valign='top' style='background-color:#CCEEFF;width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-113.4pt;text-align:right'>0.7268</p>
</td><td valign='top' style='background-color:#CCEEFF;width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-180.9pt;text-align:right'>0.7708</p>
</td></tr>
<tr><td valign='top' style='width:426.35pt'><p style='font:10pt Times New Roman;margin:0'>CAD</p>
</td><td valign='top' style='width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-113.4pt;text-align:right'>0.7902</p>
</td><td valign='top' style='width:132.2pt'><p style='font:10pt Times New Roman;margin:0;margin-left:-180.9pt;text-align:right'>0.7841</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The year-end 2021 net book value (after accumulated depreciation) of consolidated PP&amp;E was 33% of purchase cost. &#160;End-of-year PP&amp;E turns (Net Sales divided by Net PP&amp;E) was 4.4 in 2021 compared to 3.7 in 2020 due to 16% higher 2021 sales and lower USD asset values of foreign subsidiaries, offset by investment in new PP&amp;E assets needed for the future which are not in use yet. &#160;A future leverage in productivity of fixed assets which will not have to be further increased to support new business activity will be a source of continued incremental profitability. &#160;&#160;&#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>21</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'> &#160; &#160;Net intangible assets (after accumulated amortization) are comprised of the capitalized costs of obtaining patents and other intellectual property, as well as the value of identifiable intangible assets (IIA) and goodwill resulting from acquisitions. Net intangible assets were $31,412 (27% of total assets) at the end of 2021 compared to $38,157 (34% of total assets) at the end of 2020. &#160;Per US GAAP, intangible assets are categorized as either 1) IIA, which are amortized over the estimated useful life of the assets, or 2) goodwill, which is not amortized or expensed until the associated economic value of the acquired asset becomes impaired. Those two categories of Femcare intangibles at year-end 2021 were net IIA of $9,064 and goodwill of $6,907. The accumulated amortization of Femcare IIA as of December 31, 2021 since the March 18, 2011 acquisition was $23,419. The remaining Femcare IIA will be fully amortized in 4 more years. The goodwill portion of intangible assets resulting from the Femcare acquisition, which is not amortized, declined $65 due to a weaker GBP at year-end, i.e. the different FX rate on fixed goodwill in GBP terms. In early 2019, UTMD acquired an additional $21,000 IIA from the purchase of the remaining life of exclusive U.S. distribution rights for the Filshie Clip System from CSI, of which $12,895 has been amortized through year-end 2021. &#160;The remaining CSI IIA will be fully amortized in less than 2 more years. &#160;UTMD&#8217;s goodwill balance from prior acquisitions including Femcare, Columbia Medical, Gesco and Abcorp was $14,098 at the end of 2021.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Because the products associated with UTMD&#8217;s acquisitions of Columbia Medical in 1997, Gesco in 1998, Abcorp in 2004 and Femcare in 2011 continue to be viable parts of UTMD&#8217;s overall business, UTMD does not expect the current goodwill value associated with the four acquisitions to become impaired in 2022. Amortization of IIA was $6,645 in 2021 compared to $6,515 in 2020. The difference was due to &#163;5 lower Femcare IIA amortization and the GBP FX difference on all Femcare IIA amortization. Specifically, the 2021 non-cash amortization expense of Femcare IIA was $2,189 (&#163;1,590) compared to $2,049 (&#163;1,595) in 2020. &#160;The 2022 non-cash amortization expense (included as part of consolidated G&amp;A operating expenses) of Femcare IIA will be &#163;1,589, or $2,161 if the USD/GBP average FX rate is 1.36. &#160;In other words, the 2022 Femcare IIA amortization expense is expected to be about $28 lower because of a slightly lower GBP amount and a projected weaker GBP relative to the USD. Both the 2021 and 2020 non-cash amortization expense of CSI IIA was $4,421. The 2022 operating expense resulting from amortization of CSI IIA will again be $4,421. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Liabilities</span>. </p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>As a reminder, payments for the Federal and State repatriation (REPAT) tax liability which resulted from the U.S. TCJA enacted in 2017 is 8% of the respective tax liability per year for the first five years, 15% in the sixth year, 20% in the seventh year and 25% in the eighth year. &#160;Calendar year 2022 represents the fifth year, but the $220 current liability is somewhat less than 8% of UTMD&#8217;s $2,792 total REPAT tax liability due to earlier overpayment because earlier Federal and State payments were based on an initial estimate which was conservatively too high at $6,288 compared to the final adjusted estimate of $2,792. The long term $1,675 REPAT tax liability, to be paid in years 2023-2025, represents 60% of the total liability. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;Year-end 2021 current liabilities were $45 lower than at the end of 2020. Ending accrued liabilities were $159 lower due primarily to $585 higher OEM customer deposits and $279 higher accrued payroll and bonuses offset by $1,038 lower dividends payable. The $1,038 stockholder dividend declared in 4Q 2020 was paid in January 2021, whereas the $7,309 dividend declared in 4Q 2021 was paid in December 2021. Total liabilities were $425 lower at the end of 2021 compared to the end of 2020. The resulting 2021 year-end total debt ratio was 7% compared to 8% at the end of 2020. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;The year-end 2021 DTL balance created as a result of the fifteen-year deferred tax consequence of the amortization of Femcare&#8217;s IIA was $2,105, down from $2,151 at the end of 2020. The relatively small $47 decline in this DTL considering the $2,189 in 2021 amortization of IIA was due to the UK tax law change in 2Q 2021 which increased the DTL $390, together with a difference in GBP FX rate at the end of 2021. Without the tax law change, the theoretical tax effect at the 2021 19% tax rate for the 2021 IIA amortization expense would have been $416. In addition to liabilities stated on the balance sheet, UTMD has operating lease and purchase obligations described in Note 14 and Note 12, respectively, to the financial statements. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Results of Operations</span>.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:9pt'>a)</kbd><kbd style='margin-left:21.3pt'></kbd><span style='border-bottom:1px solid #000000'>Revenues</span>. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Under accounting standards applicable for 2021, the Company believed that revenue should be recognized at the time of shipment as title generally passes to the customer at the time of shipment, or completion of services performed under contract. &#160;Revenue recognized by UTMD is based upon documented arrangements and fixed contracts in which the selling price is fixed prior to acceptance and completion of an order. &#160;Revenue from product or service sales is generally recognized at the time the product is shipped or service completed and invoiced, and collectability is reasonably assured. &#160;Over 99% of UTMD&#8217;s revenue is recognized at the time UTMD ships a physical device to a customer&#8217;s designated location, where the selling price for the item shipped was agreed prior to UTMD&#8217;s acceptance and completion of the customer order. There are no post-shipment obligations which have been or are expected to be material to financial results. &#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>22</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:10.8pt'></kbd>There are circumstances under which revenue may be recognized when product is not shipped, which have met the criteria of ASC 606: &#160;the Company provides engineering services, for example, design and production of manufacturing tooling that may be used in subsequent UTMD manufacturing of custom components for other companies. &#160;This revenue is recognized when UTMD&#8217;s service has been completed according to a fixed contractual agreement.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;&#160;Terms of sale are established in advance of UTMD&#8217;s acceptance of customer orders. In the U.S., Ireland, UK, France, Australia and Canada since the beginning of 2017, UTMD has generally accepted orders directly from and shipped directly to end-user clinical facilities, as well as third party medical/surgical distributors, under UTMD&#8217;s Standard Terms and Conditions (T&amp;C) of Sale. About 11% of UTMD&#8217;s domestic end-user sales went through third party med/surg distributors which contract separately with clinical facilities to provide purchasing, storage and scheduled delivery functions for the applicable facility. &#160;UTMD&#8217;s T&amp;C of Sale to end-user medical facilities are substantially the same in the U.S., Canada, Ireland, UK, France, Australia and New Zealand.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>UTMD may allow separate discounted pricing agreements with a specific clinical facility or group of affiliated facilities based on volume of purchases. &#160;Pricing agreements which are documented arrangements with clinical facilities, or groups of affiliated facilities, if applicable, are established in advance of orders accepted or shipments made. &#160;For existing customers, past actual shipment volumes typically determine the fixed price by part number for the next agreement period. For new customers, the customer&#8217;s best estimate of volume is usually accepted by UTMD for determining the ensuing fixed prices for the agreement period. Prices are not adjusted after an order is accepted. For the sake of clarity, the separate pricing agreements with clinical facilities based on volume of purchases disclosure is not inconsistent with UTMD&#8217;s disclosure above that the selling price is fixed prior to the acceptance of a specific customer order. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.1pt'></kbd>UTMD&#8217;s global consolidated trade sales are comprised of domestic and OUS sales. Domestic sales in 2021 included 1) direct domestic sales, sales of finished devices to end-user facilities and med/surg distributors in the U.S., and 2) domestic OEM sales, sales of components or finished products, which may not be medical devices, to other companies for inclusion in their products. &#160;OUS sales are export sales from UTMD in the U.S. to customers outside the U.S. invoiced in USD, and sales from UTMD subsidiaries in Ireland, Canada, Australia and the UK which may be invoiced in EUR, GBP, CAD, AUD, NZD or USD. &#160;The term &#8220;trade&#8221; means sales to customers which are not part of UTMD. Each UTMD entity had 2021 intercompany sales of components and/or finished devices to other UTMD entities.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.1pt'></kbd>The following table shows the 2021 USD denominated revenues by sales channel compared to 2020 and 2019. &#160;Australia domestic sales included sales directly to New Zealand medical facilities beginning in 4Q 2020:&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:184.8pt'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'><span style='border-bottom:1px solid #000000'>Revenue [USD denominated]</span></p>
</td><td valign='top' style='width:101.15pt'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2021 Compared to 2020</span></p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:101.2pt;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2021 Compared to 2019</span></p>
</td><td valign='top' style='width:101.2pt;border-left:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:184.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>U.S. domestic &#160;(excluding OEM)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.15pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$21,096</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ 8.9%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$19,373</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ 0.7%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$20,949</p>
</td></tr>
<tr><td valign='top' style='width:184.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Canada domestic</p>
</td><td valign='top' style='width:101.15pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>1,382</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>(6.7%)</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>1,481</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>(34.4%)</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>2,107</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:184.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Ireland domestic</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.15pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>446</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+17.7%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>379</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>(18.8%)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>549</p>
</td></tr>
<tr><td valign='top' style='width:184.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>UK domestic</p>
</td><td valign='top' style='width:101.15pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>2,388</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+18.1%</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>2,023</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>(24.7%)</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>3,171</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:184.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>France domestic</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.15pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>1,424</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+13.6%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>1,253</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>(20.2%)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>1,785</p>
</td></tr>
<tr><td valign='top' style='width:184.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>Australia domestic</p>
</td><td valign='top' style='width:101.15pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>1,705</span></p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>+20.0%</span></p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>1,421</span></p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>( 0.1%)</span></p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>1,706</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:184.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:right'>Subtotal, Direct to End-User:</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.15pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$28,441</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ &#160;9.7%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$25,930</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>( 6.0%)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$30,267</p>
</td></tr>
<tr><td valign='top' style='width:184.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.15pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.2pt;border-top:0.5pt solid #000000;border-left:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:184.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>All Other OUS (Sales to Int&#8217;l Distributors)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.15pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>11,050</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+13.3%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>9,753</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ &#160;9.5% </p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>10,092</p>
</td></tr>
<tr><td valign='top' style='width:184.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'>U.S. OEM Sales</p>
</td><td valign='top' style='width:101.15pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>9,563</span></p>
</td><td valign='top' style='width:101.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>+47.3%</span></p>
</td><td valign='top' style='width:101.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>6,495</span></p>
</td><td valign='top' style='width:101.2pt;border-bottom:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>+ 46.1%</span></p>
</td><td valign='top' style='width:101.2pt;border-left:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'><span style='border-bottom:1px solid #000000'>6,545</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:184.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:right'>Worldwide Revenues</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.15pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$49,054</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+16.3%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$42,178</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-right:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>+ &#160;4.6%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt;border-top:0.5pt solid #000000;border-left:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt;text-align:center'>$46,904</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'> &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Except for Canada, sales in all channel categories rebounded well from 2020. &#160;Whereas UTMD total consolidated sales in 2021 were almost 5% higher than in the pre-pandemic year of 2019, direct sales in Europe and Canada remained 20-30% lower than in 2019, indicating a slower recovery from the pandemic in those regions. &#160;Global consolidated trade sales in 2021 were $49,054 compared to $42,178 in 2020 and $46,904 in 2019. The $4,726 (10.1%) lower sales in 2020 from 2019 were primarily the result of restrictions on medical procedures that government officials worldwide deemed nonessential during the COVID-19 pandemic, presumably to conserve medical facility capacity. &#160;Total U.S. domestic sales including OEM were up $4,793 (+18.5%) in 2021, at $30,659 compared to $25,866 in 2020, and $27,493 in 2019. OUS sales were up $2,083 (+12.8%) at $18,395 compared to $16,312 in 2020, and $19,411 in 2019. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Domestic Sales</span>.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>U.S. domestic sales in 2021 were $30,659 (63% of total sales) compared to $25,866 (61% of total sales) in 2020, and $27,493 (59% of total sales) in 2019. The components of the $4,793 higher 2021 domestic sales were $209 (3.3%) lower sales of the Filshie Clip System devices in the U.S., $3,069 (+47.3%) higher sales of components and finished devices used in other companies&#8217; products (OEM customers), and $1,933 (+14.8%) higher direct sales of all other UTMD (non-Filshie) finished devices to domestic end-users. &#160;Domestic sales in 2019 were $27,493.&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>23</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Domestic Filshie Clip System sales in 2021 were 20% of total U.S. domestic sales compared to 24% in 2020 and 25% in 2019. &#160;Filshie sales did not recover as well as the other domestic sales categories. &#160;Looking forward to 2022, despite a continued recovery in overall surgical sterilization procedures including laparoscopic interval procedures, as there is a medical procedure trend in the U.S. to choose salpingectomy versus tubal ligation for permanent contraception post C-Section, UTMD expects U.S. Filshie device sales in 2022 will remain about the same as in 2021. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Domestic OEM sales in 2021 were 31% of total U.S. domestic sales compared to 25% in 2020 and 24% in 2019. &#160;UTMD sold components and finished devices to 155 different U.S. companies in 2021, compared to 139 different companies in 2020 and 147 companies in 2019, for use in their product offerings. &#160;Sales to UTMD&#8217;s largest OEM customer represented 82% of total domestic OEM sales in 2021 compared to 75% of total domestic OEM sales in both 2020 and 2019. UTMD&#8217;s largest OEM customer markets biopharmaceutical manufacturing control systems which exclusively utilize UTMD&#8217;s pressure monitoring technology, and for which demand is booming. &#160;If UTMD had had the manufacturing capacity primarily in terms of assembly operators in 2021, OEM sales would have been much higher. Looking forward to 2022, UTMD again expects substantial growth in OEM sales as engineering projects for manufacturing expansion come to fruition.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Domestic direct end-user sales <span style='border-bottom:1px solid #000000'>excluding</span> the Filshie Clip System were 49% of total U.S. domestic sales in 2021 compared to 51% in both 2020 and 2019. &#160;Of UTMD&#8217;s four domestic direct product categories, neonatal products were $5,343 (22% higher), labor &amp; delivery (L&amp;D) products were $3,940 (7% higher), gynecology/ electrosurgery/ urology products excluding the Filshie Clip System were $4,837 (12% higher), and blood pressure monitoring devices were $873 (25% higher). &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>OUS Sales</span>.</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-6.25pt'><kbd style='margin-left:9pt'></kbd>Sales OUS in 2021 were $18,395 (12.8% higher) compared to $16,312 in 2020. OUS sales were $19,411 in 2019. &#160;Europe and Canada were particularly affected by government restrictions during the pandemic.&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-6.25pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Because a significant portion of UTMD&#8217;s OUS sales are invoiced in foreign currencies, changes in FX rates can potentially have a material effect on period-to-period USD-denominated sales. Although a weaker USD in the first half of the year helped increase foreign currency sales in USD terms, the FX rate impact for the year 2021 was a minor factor compared to the negative impact of the pandemic on OUS sales. UTMD&#8217;s FX rates for income statement purposes are transaction-weighted averages. The average rates from the applicable foreign currency to USD during 2021 compared to 2020 follow. &#160;The average FX rates for 2019 are also listed for reference:&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:42.64%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>Change</span></p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:42.64%'><p style='font:10pt Times New Roman;margin:0'>GBP</p>
</td><td valign='top' style='background-color:#CCEEFF;width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>1.376</p>
</td><td valign='top' style='background-color:#CCEEFF;width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>+6.6%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>1.291</p>
</td><td valign='top' style='background-color:#CCEEFF;width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>1.277</p>
</td></tr>
<tr><td valign='top' style='width:42.64%'><p style='font:10pt Times New Roman;margin:0'>EUR</p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>1.183</p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>+3.2%</p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>1.146</p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>1.119</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:42.64%'><p style='font:10pt Times New Roman;margin:0'>AUD</p>
</td><td valign='top' style='background-color:#CCEEFF;width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>0.751</p>
</td><td valign='top' style='background-color:#CCEEFF;width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>+8.6%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>0.692</p>
</td><td valign='top' style='background-color:#CCEEFF;width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>0.696</p>
</td></tr>
<tr><td valign='top' style='width:42.64%'><p style='font:10pt Times New Roman;margin:0'>CAD</p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>0.798</p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'> +6.2%</p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>0.751</p>
</td><td valign='top' style='width:14.34%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>0.754</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-6.25pt'><kbd style='margin-left:9pt'></kbd>The sales weighted FX rate change in 2021 compared to 2020 was +4.9%. &#160;In other words, consolidated USD sales in 2021 were increased $619 from what they would have been using the prior year&#8217;s FX rates.&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-6.25pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-6.25pt'><kbd style='margin-left:9pt'></kbd>Seventy-two percent of (USD denominated) 2021 OUS sales were invoiced in foreign currencies compared to 58% in 2020 and 66% in 2019. As a portion of total USD consolidated sales, 27% of UTMD&#8217;s USD-equivalent sales were invoiced in foreign currencies in 2021 compared to 22% in 2020 and 27% in 2019. The GBP, EUR, AUD and CAD converted sales represented 6%, 15%, 3% and 3% of total 2021 USD sales, respectively. &#160;This compares to 6%, 10%, 3% and 3% of total 2020 USD sales, and to 8% GBP, 11% EUR, 4% AUD and 4% CAD of total 2019 USD sales. &#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>USD-denominated trade (excludes intercompany) sales of devices to OUS customers (excluding France) by UTMD&#8217;s Ireland facility (UTMD Ltd) were $7,439 in 2021 (39% higher) compared to $5,347 in 2020, and were $5,894 in 2019. &#160;In addition, UTMD Ltd also sold devices that it had manufactured directly to France in 2021 due to BREXIT, which in prior years were sold to Femcare Ltd in the UK on an intercompany basis and then sold by Femcare Ltd directly to French medical facilities. USD-denominated sales to France in 2021 were $1,424 (14% higher) compared to $1,253 in 2020, and were $1,785 in 2019. Some sales, mostly to Northern Ireland, were invoiced in GBP which was up 6.6% in 2021 compared to the 2020 USD. &#160;In addition, as the 2021 EUR was 3.2% higher relative to the 2020 USD, the total FX impact added $226 to Ireland&#8217;s total 2021 sales. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>In 2021, UTMD&#8217;s UK subsidiary, Femcare Ltd., had $2,451 trade sales of devices to domestic UK and certain international distributor customers, up 12% compared to $2,183 in 2020. The total FX impact added $170 in USD terms. &#160;Femcare USD-denominated sales excluding France in 2019 were $3,596. &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>24</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>USD-denominated sales of devices to end-users in Australia by Femcare&#8217;s Australia distribution subsidiary (Femcare Australia Pty Ltd) were $1,705 (20% higher) in 2021 compared to $1,421 in 2020. &#160;In 4Q 2020, UTMD converted from selling devices by Femcare in the UK to a third party distributor in New Zealand (NZ) to distributing devices directly to NZ medical facilities from Femcare Australia. &#160;In addition, an 8.6% stronger AUD in 2021 added $135 in USD-denominated sales. &#160;Femcare Australia sales in 2019, which did not include sales to NZ, were $1,706. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>UTMD&#8217;s Canada distribution subsidiary (Utah Medical Products Canada, Inc.) had the weakest sales results of UTMD&#8217;s OUS subsidiaries. USD-denominated sales of devices to end-users in Canada were $1,382 (7% lower) than $1,481 in 2020 despite a CAD which was 6.2% stronger than in the prior year. The stronger CAD added $88, so 2021 sales were $1,294 (13% lower) in constant currency terms. Canada sales were $2,107 in 2019. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>UTMD groups its sales into four general product categories: 1) obstetrics, comprised of labor and delivery management tools for monitoring fetal and maternal well-being, for reducing risk in performing difficult delivery procedures and for improving clinician and patient safety; &#160;2) gynecology/ electrosurgery/ urology, comprised of tools for gynecological procedures associated primarily with cervical/ uterine disease including LETZ, endometrial tissue sampling, transvaginal uterine sonography, diagnostic laparoscopy, surgical contraception and other MIS procedures; specialty excision and incision tools; conservative urinary incontinence therapy devices; and urology surgical procedure devices; &#160;3) neonatal critical care, comprised of devices that provide developmentally-friendly care to the most critically ill babies, including providing vascular access, enteral feeding, administering vital fluids, oxygen therapy while maintaining a neutral thermal environment, providing protection and assisting in specialized applications; and &#160;4) blood pressure monitoring/ accessories/ other, comprised of specialized transducers and components as well as molded parts and assemblies sold on an OEM basis to other companies. &#160;In these four categories, UTMD&#8217;s primary revenue contributors enjoy significant brand awareness by clinical users.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:10.8pt'></kbd>Global revenues by product category:&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>%</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>%</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>%</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Obstetrics</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$4,675</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>9</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$4,523</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>11</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$5,000</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>11</p>
</td></tr>
<tr><td valign='top' style='width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Gynecology/ Electrosurgery/ Urology</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>21,973</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>45</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>20,552</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>49</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>25,354</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>54</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Neonatal</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>6,691</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>14</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>5,870</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>14</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>6,066</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>13</p>
</td></tr>
<tr><td valign='top' style='width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Blood Pressure Monitoring and Accessories*</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>15,715</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>32</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>11,233</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>26</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>10,484</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>22</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Total:</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$49,054</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>100</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$42,178</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>100</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$46,904</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>100</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:10.8pt'></kbd>OUS revenues by product category:&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>%</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>%</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>%</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Obstetrics</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;735</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'> &#160;4</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;846</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'> &#160;5</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;947</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'> &#160;5</p>
</td></tr>
<tr><td valign='top' style='width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Gynecology/ Electrosurgery/ Urology</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>11,053</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>60</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>9,934</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>61</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>13,731</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>71</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Neonatal</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>1,347</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'> &#160;7</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>1,490</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'> &#160;9</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>1,412</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'> &#160;7</p>
</td></tr>
<tr><td valign='top' style='width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Blood Pressure Monitoring and Accessories*</p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>5,260</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>29</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>4,042</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>25</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>3,321</span></p>
</td><td valign='top' style='width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>17</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:40%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Total:</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ 18,395</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>100</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ 16,312</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>100</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ 19,411</p>
</td><td valign='top' style='background-color:#CCEEFF;width:10%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>100</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:24.3pt'></kbd>* includes molded components and finished medical and non-medical devices sold to OEM customers.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Looking forward to 2022, continuing government restrictions on so-called &#8220;non-essential&#8221; medical procedures seems unlikely. &#160;Although there remains much room for pandemic recovery in UTMD&#8217;s direct distribution OUS, UTMD projects a 3-4% stronger USD on the average which will offset the unit growth in direct foreign currency sales in USD terms. &#160;OUS distributor order patterns vary and are less predictable, but UTMD&#8217;s largest OUS distributor has placed a fixed 2022 order for BPM devices that is $550 higher than in 2021 based on an average EUR FX rate of 1.13 in 2022. Domestically, OEM sales are projected to be over $700 higher with projected capacity limits, but could be even higher if production worker hiring constraints in Utah become less severe. A key to sales results will be retaining U.S. Filshie device sales at a similar level as in 2021. &#160;Except for Filshie devices in the U.S., UTMD raised product prices across the board an average of about 5% in late 4Q 2021, which will benefit 2022 sales in comparison to 2021 assuming customer demand remains relatively inelastic. &#160;In summary, management&#8217;s best estimate at this time is that 2022 revenues will be up in the range of mid-single digit percentage growth.&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>25</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;margin-left:27pt'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:-18pt'>b)</kbd><span style='border-bottom:1px solid #000000'>Gross Profit (GP)</span>. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>UTMD&#8217;s 2021 consolidated GP, the surplus after subtracting costs of manufacturing, which includes purchasing raw materials, forming components, assembling, inspecting, testing, packaging and sterilizing products, from net revenues, was $30,917 (63.0% of sales) compared to $25,548 (60.6% of sales) in 2020 and $29,466 in 2019 (62.8% of sales). &#160;GP in 2021 increased $5,369 (+21.0%) with a 16.3% increase in revenues.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The Gross Profit Margin (GPM), which is GP divided by sales, expanded primarily due to the fact that a large portion of UTMD&#8217;s manufacturing expenses were fixed compared to the prior year. &#160;Another way to say this is that in 2020, a greater decline in GP than in sales was a result of UTMD&#8217;s decision to not cut important manufacturing overhead resources in the same proportion as the decline in sales, which would sacrifice future capabilities just to maintain a short term GPM. &#160;In addition to the lower absorption of fixed manufacturing overhead costs in 2020, there were two other categories of increased costs that reduced the 2020 GPM compared to 62.8% in 2019: 1) marginal costs associated with the COVID-19 pandemic including personal protective equipment for employees, cleaning supplies, extra pay to encourage employees to come to work, pay continuation beyond normal sick pay and accrued vacation pay for those quarantined with symptoms or exposed to someone with symptoms, lower productivity as a result of social distancing and higher prices levied by some suppliers and service providers, and 2) an unusually unfavorable year for UTMD&#8217;s self-insured health care plan in the U.S. &#160;Self-insured health care plan costs in 2021 returned to be more consistent with prior years&#8217; levels. &#160;Despite higher variable costs in 2021, particularly freight on incoming materials and a cost of living adjustment for Utah and Ireland production workers, the GPM in 2021 recovered to be consistent with the pre-pandemic year of 2019.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>In 2022, UTMD plans to help manage inflationary manufacturing cost pressures with administering higher prices for its devices, as and when necessary. &#160;Nevertheless, management expects that manufacturing costs in 2022 will increase faster than revenues resulting in a lower GPM. &#160;However, UTMD also expects that GP will still be higher than in 2021. &#160;If sales increase as a mid-single digit percentage, then GP are projected to increase as a low single-digit percentage. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'><kbd style='margin-left:9pt'></kbd>UTMD&#8217;s Ireland subsidiary&#8217;s (UTMD Ltd&#8217;s) GP was EUR 6,788 compared to EUR 4,198 in 2020 and EUR 2,908 in 2019. The associated GPMs were 61.2% in 2021, 54.4% in 2020 and 43.1% in 2019. &#160;Femcare UK 2021 GP was GBP 913 compared to GBP 1,495 in 2020 and GBP 3,884 in 2019. The UK 2021 GPM was 46.3% compared to 56.0% in 2020 and 70.2% in 2019. The transfer from the UK to Ireland of direct sales to France primarily explains the GP changes for both Ireland and the UK. Femcare Australia and Femcare Canada are simply distribution facilities for UTMD finished devices in their respective countries. GP is the result of subtracting intercompany purchase prices of devices plus freight from sales. Australia GP was AUD 1,399 (61.6% of sales) compared to AUD 1,194 (58.1% of sales) in 2020 and AUD 1,415 (57.7% of sales) in 2019. Canada GP was CAD 907 (52.4%of sales) in 2021 compared to CAD 1,128 (57.2% of sales) in 2020 and CAD 1,670 (54.5% of sales) in 2019. In the U.S., GP was $20,100 in 2021, $17,043 in 2020 and $19,180 in 2019. UTMD U.S. GPMs were 55.8% in 2021, 54.2% in 2020 and 57.1% in 2019. &#160;A summation of the above GP of each subsidiary will not yield UTMD&#8217;s consolidated total GP because of elimination of profit in inventory of intercompany goods. &#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>26</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;margin-left:27pt'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:-18pt'>c)</kbd><span style='border-bottom:1px solid #000000'>Operating Income</span>. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Operating Income results from subtracting operating expenses from GP. Operating Income in 2021 was $18,880 (38.5% of sales) compared to $13,708 (32.5% of sales) in 2020 and $17,632 (37.6% of sales) in 2019. &#160;On top of benefitting from a higher GPM, the higher 2021 Operating Income margin (Operating Income divided by sales) additionally reflected better absorption of relatively fixed IIA amortization expense, included in General and Administrative (G&amp;A) operating expenses, which was 13.5% of sales in 2021 compared to 15.3% of sales in 2020 and 13.0% of sales in 2019. &#160;Excluding the non-cash Femcare and CSI IIA amortization expenses, UTMD consolidated operating expenses were $5,427 (11.1% of sales) compared to $5,370 (12.7% of sales) in 2020 and $5,744 (12.2% of sales) in 2019. &#160;In other words, holding operating expense (excluding the IIA amortization expense) growth to 1% while sales increased 16% and GP increased 21%, leveraged the overall growth in Operating Income to almost 38% compared to 2020. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:27pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The UTMD Ltd (Ireland) Operating Income margin in 2021 was 57.8% compared to 50.5% in 2020 and 38.5% in 2019. &#160;Femcare UK&#8217;s Operating Income margin per US GAAP, which includes the IIA amortization expense of the 2011 acquisition, was negative in both 2021 and 2020 compared to 27.8% in 2019. &#160;Femcare Australia&#8217;s 2021 Operating Income margin was 45.9% compared to 41.7% in 2020 and 38.6% in 2019. &#160;Femcare Canada&#8217;s 2021 Operating Income margin was 34.5% compared to 40.7% in 2020 and 41.9% in 2019. UTMD&#8217;s 2021 Operating Income margin in the U.S. was 33.2% compared to 28.5% in 2020 and 33.7% in 2019. &#160;For clarity, the CSI IIA amortization expense hit the U.S. Operating Income margin, and the Femcare IIA amortization expense hit the Femcare UK Operating Income margin. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Operating expenses include sales and marketing (S&amp;M) expenses, product development (R&amp;D) expenses and G&amp;A expenses. Consolidated operating expenses were $12,037 (24.5% of sales) in 2021, $11,840 (28.1% of sales) in 2020 and $11,834 (25.2% of sales) in 2019. The following table provides a comparison of operating expense categories, as well as further segmentation of G&amp;A expenses, for the last three years. &#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td colspan='2' valign='top' style='width:276.25pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td></tr>
<tr><td colspan='2' valign='top' style='background-color:#CCEEFF;width:276.25pt'><p style='font:10pt Times New Roman;margin:0'>S&amp;M expenses</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$&#160;1,414</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$&#160;1,554</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$&#160;1,738</p>
</td></tr>
<tr><td colspan='2' valign='top' style='width:276.25pt'><p style='font:10pt Times New Roman;margin:0'>R&amp;D expenses</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>526</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>486</p>
</td><td valign='top' style='width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>483</p>
</td></tr>
<tr><td colspan='2' valign='top' style='background-color:#CCEEFF;width:276.25pt'><p style='font:10pt Times New Roman;margin:0'>G&amp;A expenses:</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:243.8pt'><p style='font:10pt Times New Roman;margin:0'>a) litigation expense provision</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>22</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>-</p>
</td><td valign='top' style='width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>16</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:243.8pt'><p style='font:10pt Times New Roman;margin:0'>b) corporate legal</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>1</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>14</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>32</p>
</td></tr>
<tr><td valign='top' style='width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:243.8pt'><p style='font:10pt Times New Roman;margin:0'>c) outside directors fees</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>125</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>116</p>
</td><td valign='top' style='width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>118</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:243.8pt'><p style='font:10pt Times New Roman;margin:0'>d) stock option compensation</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>166</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>160</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>113</p>
</td></tr>
<tr><td valign='top' style='width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:243.8pt'><p style='font:10pt Times New Roman;margin:0'>e) profit-sharing bonus accrual</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>448</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>587</p>
</td><td valign='top' style='width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>653</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:243.8pt'><p style='font:10pt Times New Roman;margin:0'>f) outside accounting audit/tax</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>179</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>223</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>216</p>
</td></tr>
<tr><td valign='top' style='width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:243.8pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:0pt'>g)</kbd><kbd style='margin-left:9pt'></kbd>Femcare IIA amortization&#160;</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>2,189</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>2,049</p>
</td><td valign='top' style='width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>2,037</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:243.8pt'><p style='font:10pt Times New Roman;margin:0'>h) CSI IIA amortization</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>4,421</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>4,421</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>4,053</p>
</td></tr>
<tr><td valign='top' style='width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:243.8pt'><p style='font:10pt Times New Roman;margin:0'>i) &#160;property &amp; liability insurance premiums</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>99</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>95</p>
</td><td valign='top' style='width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>91</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:32.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:243.8pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:0pt'>j)</kbd><kbd style='margin-left:9pt'></kbd>all other G&amp;A expenses&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2,447</span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2,135</span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2,284</span></p>
</td></tr>
<tr><td colspan='2' valign='top' style='width:276.25pt'><p style='font:10pt Times New Roman;margin:0'>G&amp;A expenses &#8211;&#160;total</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:3px double #000000'>10,097</span></p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:3px double #000000'>9,800</span></p>
</td><td valign='top' style='width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:3px double #000000'>9,613</span></p>
</td></tr>
<tr><td colspan='2' valign='top' style='background-color:#CCEEFF;width:276.25pt'><p style='font:10pt Times New Roman;margin:0'>Total Consolidated Operating Expense:</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$&#160;12,037</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$&#160;11,840</p>
</td><td valign='top' style='background-color:#CCEEFF;width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$&#160;11,834</p>
</td></tr>
<tr><td colspan='2' valign='top' style='width:276.25pt'><p style='font:10pt Times New Roman;margin:0'>Percent of sales:</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>24.5%</p>
</td><td valign='top' style='width:138.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>28.1%</p>
</td><td valign='top' style='width:138.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>25.2%</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Description of Operating Expense Categories:</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:31.5pt'></kbd>i) S&amp;M expenses: &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>S&amp;M expenses in 2021 were $1,414 (2.9% of sales) compared to $1,554 (3.7% of sales) in 2020 and $1,738 (3.7% of sales) in 2019. &#160;UK sales salaries were $130 lower in 2021 than in 2020 due to a reduction in the UK sales force. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>S&amp;M expenses are the costs of communicating UTMD&#8217;s differences and product advantages, providing training and other customer service in support of the use of UTMD&#8217;s solutions, attending clinical meetings and medical trade shows, administering customer agreements, advertising, processing orders, shipping, and paying commissions to outside independent representatives. In markets where UTMD sells directly to end-users, which in 2019-2021 included the U.S., Ireland, UK, Australia, France and Canada plus New Zealand in 2021, the largest components of S&amp;M expenses were the cost of customer service required to timely process orders and the distribution costs associated with shipping products. &#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>S&amp;M expenses include all customer support costs including training. In general, training is not required for UTMD&#8217;s products since they are well-established and have been clinically widely used. Written &#8220;Instructions For Use&#8221; are packaged with all finished devices. Although UTMD does not have any explicit contracts with customers to provide training, it does provide hospital in-service and clinical training as required and reasonably requested. &#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>27</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>UTMD promises prospective customers that it will provide, at no charge in reasonable quantities, electronic media and other instructional materials developed for the use of its products. UTMD provides customer support from offices in the U.S., Canada, Ireland, UK and Australia by telephone to answer user questions and help troubleshoot any user issues. Occasionally, on a case-by-case basis, UTMD may utilize the services of an independent practitioner to provide educational assistance to clinicians. All in-service and training expenses are routinely expensed as they occur. &#160;Except for the consulting services of independent practitioners and occasional use of marketing consultants, all of these services are allocated from fixed S&amp;M overhead costs. Historically, additional consulting costs have been immaterial to financial results, which is also UTMD&#8217;s expectation for the future.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:36pt'></kbd>ii) R&amp;D expenses: &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>R&amp;D expenses in 2021 were $526 (1.1% of sales) compared to $486 (1.2% of sales) in 2020 and $483 (1.0% of sales) in 2019. &#160;R&amp;D expenses include the costs of investigating clinical needs, developing innovative concepts, testing concepts for viability, validating methods of manufacture, completing any necessary premarketing clinical trials, regulatory documentation and other activities required for design control, responding to customer requests for product enhancements, and assisting manufacturing engineering on an ongoing basis in developing new processes or improving existing processes. Although no new UTMD devices were launched in 2021, UTMD continued to customize configurations of its existing devices based on specific clinical requests and R&amp;D played a significant role in manufacturing process improvements that were needed to support fast growing OEM product sales, in addition to continuing work on new product projects. UTMD does not pre-announce new devices that are being developed. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:36pt'></kbd>iii) &#160;G&amp;A expenses: &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>G&amp;A expenses in 2021 were $10,096 (20.6% of sales) compared to $9,800 (23.2% of sales) in 2020 and $9,613 (20.5% of sales) in 2019. &#160;G&amp;A expenses include the &#8220;front office&#8221; functional costs of executive management and outside directors, finance and accounting, corporate information systems, human resources, stockholder relations, corporate risk management, corporate governance, protection of intellectual property, amortization of identifiable intangibles and legal costs. &#160;The table above helps identify certain specific categories of G&amp;A expenses which might be of interest to stockholders. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt'><kbd style='margin-left:9pt'></kbd>As indicated in the table above, amortization of the Femcare IIA acquired in 2011 is part of G&amp;A expenses. The IIA GBP amortization expense in 2021 was &#163;1,590 compared to &#163;1,595 in 2020, practically the same. &#160;However, because of a stronger GBP for the year as a whole, the USD 2021 IIA amortization expense was $140 higher than in 2020. &#160;But 16.3% higher consolidated sales allowed better absorption of the resulting 6.8% higher USD Femcare IIA expense, i.e. Femcare IIA amortization expense was 4.5% of sales in 2021 compared to 4.9% of 2020 sales. &#160;The G&amp;A noncash amortization expense of Femcare IIA was 4.3% of 2019 total consolidated sales. The Femcare IIA amortization expense will continue until March 2026 (or until the value of any remaining IIA becomes impaired). &#160;UTMD estimates that the Femcare IIA amortization expense in 2022 may be $25 lower due to an average stronger USD in 2022 compared to 2021. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The early 2019 $21,000 purchase of CSI exclusive Filshie Clip System U.S. distribution rights also represents an IIA which is being amortized on a straight line basis over the remaining life of the Femcare distribution agreement with CSI which will be through 3Q 2023 (unless it becomes impaired before that, which is unlikely). This CSI IIA amortization expense is included in U.S. G&amp;A expenses. &#160;In 2021 and 2020, the CSI IIA amortization expense was the same at $4,421. &#160;But again, due to the 16.3% higher consolidated sales, the CSI IIA amortization expense represented only 9.0% of sales compared to 10.5% of sales in 2020. The CSI IIA amortization expense in 2019, which was a partial year due to the timing of the acquisition, was $4,053 (8.6% of 2019 annual sales). &#160;In 2022, the constant $4,421 CSI IIA amortization expense will lower as a percentage of sales if further diluted by projected higher sales.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>It seems worth noting that the combined Filshie Clip System and Femcare non-cash IIA amortization expenses represented more than half of all of UTMD&#8217;s total consolidated operating expenses during the three years of 2019-2021; 54.9% in 2021, 54.6% in 2020 and 51.5% in 2019.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:27pt'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:-18pt'>d)</kbd><span style='border-bottom:1px solid #000000'>Non-operating income/Non-operating expense, and Income Before Taxes (EBT)</span>. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Non-operating income includes royalties from licensing UTMD&#8217;s technology, rent from leasing underutilized property to others, income earned from investing the Company&#8217;s excess cash and gains from the sale of assets. &#160;Non-operating expense includes interest on bank loans, bank service fees, excise taxes and losses from the sale of assets. Also, the period-to-period remeasured value of EUR cash balances held in the UK, and GBP balances held in Ireland, generates a gain or loss which is booked at reporting period end as non-operating income or expense, as applicable. </p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>28</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Net non-operating income (combination of non-operating income and non-operating expense) was $181 in 2021, $132 in 2020 and $252 in 2019. The higher non-operating income in 2021 compared to 2020 was due to $142 higher rent income in Ireland from renting unneeded warehouse space. A description of components of UTMD&#8217;s non-operating income or expense follows:&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:45pt'><br/>1) &#160;Interest Expense. &#160;There was no interest expense in 2019-2021. &#160;Absent an acquisition or large repurchase of shares that requires new borrowing, UTMD does not expect any interest expense in 2022.<br/></p>
<p style='font:10pt Times New Roman;margin:0;margin-left:45pt'>2) &#160;Investment of excess cash. &#160;Consolidated investment income (including gains and losses on sales of investments) was $46 in 2021, $64 in 2020 and $255 in 2019. &#160;Interest rates in 2021 remained practically zero, and UTMD had to pay negative interest on EUR bank balances in Ireland. UTMD is expecting interest rates to improve marginally in 2022. <br/></p>
<p style='font:10pt Times New Roman;margin:0;margin-left:45.35pt'>3) &#160;Royalties. &#160;Royalties in 2021 were $15 compared to $20 in 2020, and $5 in 2019. Presently, there is only one arrangement which began in 2020 under which UTMD is receiving royalties on its technology. &#160;<br/></p>
<p style='font:10pt Times New Roman;margin:0;margin-left:45.35pt'>4) &#160;Gains/ losses from remeasured currency in bank accounts. &#160;UTMD recognized a $23 loss in 2021 compared to a $45 gain in 2020 and a $76 loss in 2019 from gains or losses on remeasured foreign currency bank balances. &#160;EUR currency cash balances in the UK, and GBP currency cash bank balances in Ireland, are subject to remeasured currency translation gains/ losses as a result of period to period changes in FX rates. &#160;&#160;&#160;<br/></p>
<p style='font:10pt Times New Roman;margin:0;margin-left:45.35pt'>5) &#160;Other non-operating income or expense. &#160;Income received from renting unused warehouse space in Ireland and parking lot space in Utah for a cell phone tower, offset by bank fees, and other miscellaneous non-operating expenses resulted in net non-operating income of $124 in 2021 compared to a net non-operating expense of $10 in 2020 and $85 in 2019. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-6.5pt'><kbd style='margin-left:9pt'></kbd>EBT results from adding net non-operating income or subtracting net non-operating expense from Operating Income. Consolidated EBT was $19,061 (38.9% of sales) in 2021 compared to $13,840 (32.8% of sales) in 2020 and $17,884 (38.1% of sales) in 2019. &#160;The 2021 EBT of UTMD Ltd. (Ireland) was &#8364;6,277 (56.6% of sales) compared to &#8364;3,728 (48.3% of sales) in 2020 and &#8364;2,577 (38.2% of sales) in 2019. &#160;Femcare Ltd&#8217;s (UK) 2021 EBT was (&#163;1,003) compared to (&#163;593) in 2020 and &#163;1,566 (28.3% of sales) in 2019. &#160;Femcare Ltd, as the legal manufacturer of the Filshie Clip System, supports worldwide regulatory requirements in addition to absorbing the IIA amortization expense of the 2011 Femcare Group acquisition. Femcare AUS&#8217;s 2021 EBT was AUD 1,042 (45.9% of sales) compared to AUD 857 (41.8% of sales) in 2020 and AUD 952 (38.8% of sales) in 2019. Femcare Canada&#8217;s 2021 EBT was CAD 592 (34.2% of sales) compared to CAD 798 (40.5% of sales) in 2020 and CAD 1,280 (41.8% of sales) in 2019.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>As a side note for clarity of financial results, UTMD&#8217;s EBT, as well as all other income statement measures above the EBT line in the Income Statements, were unaffected by 2019-2021 adjustments to income tax provisions as a result of income tax rate changes in the UK enacted in 2Q 2020 and 2Q 2021, which increased UTMD&#8217;s long term deferred tax liability, and the 2019 corrected estimate of the repatriation tax and associated GILTI tax and FDII tax credit, all of which resulted from the U.S. TCJA enacted in December 2017.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>EBITDA is a non-US GAAP metric that UTMD management believes is of interest to investors because it provides meaningful supplemental information to both management and investors that represents profitability performance without factoring in effects of financing, accounting decisions regarding non-cash expenses, capital expenditures or tax environments. If the Company were to need to borrow to pay for a major asset or acquisition, the projected EBITDA metric would be of primary interest to a lending institution to determine UTMD&#8217;s credit worthiness. Although the U.S. Securities and Exchange Commission advises that EBITDA is a non-GAAP metric, UTMD&#8217;s non-US GAAP EBITDA is the sum of the following elements in the table below, each of which is a US GAAP number: &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:341.05pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:122.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:341.05pt'><p style='font:10pt Times New Roman;margin:0'>EBT</p>
</td><td valign='top' style='background-color:#CCEEFF;width:122.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$19,061</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$13,840</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$17,884</p>
</td></tr>
<tr><td valign='top' style='width:341.05pt'><p style='font:10pt Times New Roman;margin:0'>Depreciation Expense</p>
</td><td valign='top' style='width:122.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>636</p>
</td><td valign='top' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>655</p>
</td><td valign='top' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>700</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:341.05pt'><p style='font:10pt Times New Roman;margin:0'>Femcare IIA Amortization Expense</p>
</td><td valign='top' style='background-color:#CCEEFF;width:122.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>2,189</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>2,049</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>2,037</p>
</td></tr>
<tr><td valign='top' style='width:341.05pt'><p style='font:10pt Times New Roman;margin:0'>CSI IIA Amortization Expense</p>
</td><td valign='top' style='width:122.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>4,421</p>
</td><td valign='top' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>4,421</p>
</td><td valign='top' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>4,053</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:341.05pt'><p style='font:10pt Times New Roman;margin:0'>Other Non-Cash Amortization Expense</p>
</td><td valign='top' style='background-color:#CCEEFF;width:122.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>34</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>45</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>54</p>
</td></tr>
<tr><td valign='top' style='width:341.05pt'><p style='font:10pt Times New Roman;margin:0'>Stock Option Compensation Expense</p>
</td><td valign='top' style='width:122.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>166</p>
</td><td valign='top' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>160</p>
</td><td valign='top' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>113</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:341.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>Remeasured Foreign Currency Balances</p>
</td><td valign='top' style='background-color:#CCEEFF;width:122.4pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>23</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(45)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>76</p>
</td></tr>
<tr><td valign='top' style='width:341.05pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>UTMD non-US GAAP EBITDA:</p>
</td><td valign='top' style='width:122.4pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$26,530</p>
</td><td valign='top' style='width:113.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$21,125</p>
</td><td valign='top' style='width:113.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$24,917</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>In summary, UTMD&#8217;s 2021 non-US GAAP EBITDA increased 25.6% compared to 2020 and 6.5% compared to 2019, when 2021 sales were 16.3% higher than in 2020 and 4.6% higher than in 2019. &#160;This metric is expected to also grow faster than the projected increase in sales in 2022.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:27pt'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:-18pt'>e)</kbd><span style='border-bottom:1px solid #000000'>Net Income, Earnings Per Share (EPS) and Return on Equity (ROE)</span>. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd><span style='border-bottom:1px solid #000000'>Net Income</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Net Income results after subtracting a provision for estimated income taxes from EBT. UTMD&#8217;s US GAAP Net Income in 2021 was $14,788 (30.1% of sales) compared to $10,798 (25.6% of sales) in 2020 and $14,727 (31.4% of sales) in 2019. Because of changes in UTMD&#8217;s repatriation tax estimate in the year 2019 due to the TCJA enacted in December 2017, as well as UK income tax changes enacted in 2020 and 2021, management does not believe either that the tax provision adjustments have a direct relationship to sales in the same periods, or that the year-to-year changes in US GAAP Net Income is an accurate measure of UTMD&#8217;s bottom-line financial performance in the applicable time periods. Ignoring the income tax adjustments, 2021 non-US GAAP Net Income was $15,178 (30.9% of sales) compared to $11,023 (26.1% of sales) in 2020 and $14,145 (30.2% of sales) in 2019. &#160;Please see the table below which presents Net Income both according to US GAAP and also prior to recognition of the various tax estimate adjustments. &#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>29</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The US GAAP consolidated income tax provision rate for 2021 was 22.4% compared to 22.0% in 2020 and 17.7% of EBT in 2019. The estimated tax provision adjustments in 2019 reduced the 2019 average rate, whereas the adjustments in 2020 and 2021 increased the average rates. &#160;The non-US GAAP consolidated combined income tax provision rate for both 2021 and 2020 was 20.4% compared to 20.9% of EBT in 2019. For clarity, the UK income tax rate change in 2021 from 19% to 25% beginning in April 2023 <span style='border-bottom:1px solid #000000'>added $390</span> to UTMD&#8217;s 2021 income tax provision, representing the increased tax which will be due over the remaining life of amortization of Femcare&#8217;s IIA, which is not a tax deductible expense in the UK. &#160;Similarly, the UK income tax rate change in 2020 from 17% to 19% <span style='border-bottom:1px solid #000000'>added $225</span> to UTMD&#8217;s 2020 income tax provision, representing the increased tax which will be due over the remaining life of amortization of Femcare&#8217;s IIA, which is not a tax deductible expense in the UK. &#160;The income tax adjustment in 2019 <span style='border-bottom:1px solid #000000'>subtracted $582</span> from UTMD&#8217;s 2019 income tax provision due to UTMD&#8217;s initial estimates of taxes due under the TCJA being too high. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:0pt'> </kbd><kbd style='margin-left:9pt'></kbd>More normally and in general, year-to-year fluctuations in the combined average tax provision rate will result from variation in EBT contribution from subsidiaries in jurisdictions with different corporate income tax rates. Taxes in foreign subsidiaries are based on taxable EBT in those sovereignties, which can be different from the contribution to consolidated EBT per US GAAP. &#160;UTMD expects, barring any new tax law changes which are currently unknown, that its combined income tax rate for 2022 will be within the (non-GAAP) 20.4%-20.9% range of the three years of 2019-2021. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The UK had an income tax rate of 19% for all three years 2019-2021. &#160;The UK also allowed a tax deduction for sales of UK patented products which varied from year-to-year based on somewhat complicated rules which are sorted out for UTMD by independent UK tax specialists. The income tax rate for AUS was 30% for all three years. The income tax rate for Canada was about 26% for the three years. Profits of the Ireland subsidiary were taxed at a 12.5% rate on exported manufactured products, and a 25% rate on rental and other types of income including income from sales of medical devices in Ireland domestically. As UTMD stockholders likely remember, in the U.S. the Federal income tax rate was changed after 2017 to 21% from 34% prior to the TCJA. &#160;Federal taxes are not 21% of U.S. EBT, however, as income taxes paid to the State are a deductible expense for Federal tax purposes, other expenses are not deductible and there remains an R&amp;D tax credit along with other credits, not to mention a GILTI tax related to foreign income and FDII tax credit related to profits on export sales. The Utah state income tax rate declined to 4.95% from 5% prior to the TCJA, and the State enacted income apportionment rules that provide for additional tax relief. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd><span style='border-bottom:1px solid #000000'>Earnings Per Share (EPS)</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>EPS are Net Income divided by the number of shares of stock outstanding (diluted to take into consideration stock option awards which are &#8220;in the money,&#8221; i.e., have exercise prices below the applicable period&#8217;s weighted average market value). &#160;Diluted EPS in 2021 per US GAAP were $4.041 ($4.147 prior to the UK deferred tax liability adjustment) compared to $2.941 ($3.002 prior to the UK deferred tax liability adjustment) in 2020 and $3.939 ($3.784 prior to the Utah state TCJA tax correction) in 2019. The 2021 non-US GAAP EPS result exceeded management&#8217;s projection at the beginning of the year.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The 2021-ending weighted average number of diluted common shares (the number used to calculate diluted EPS) was 3,660 (in thousands) compared to 3,672 in 2020 and 3,739 in 2019. Dilution for &#8220;in the money&#8221; unexercised options for the year 2021 was 13 (in thousands) shares compared to 14 shares in 2020 and 18 shares in 2019. Actual outstanding common shares as of December 31, 2021 were 3,655.&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>30</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>UTMD management believes the presentation of Net Income and EPS results excluding the tax liability estimate adjustments in 2021, 2020 and 2019 provides meaningful supplemental information to both management and investors that is more clearly indicative of UTMD&#8217;s bottom line results for comparison purposes. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>US GAAP</span>: </p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:236.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:151.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:141.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:160.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:236.55pt'><p style='font:10pt Times New Roman;margin:0'>Net Income</p>
</td><td valign='top' style='background-color:#CCEEFF;width:151.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$14,788</p>
</td><td valign='top' style='background-color:#CCEEFF;width:141.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$10,798</p>
</td><td valign='top' style='background-color:#CCEEFF;width:160.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$14,727</p>
</td></tr>
<tr><td valign='top' style='width:236.55pt'><p style='font:10pt Times New Roman;margin:0'>Net Income Margin</p>
</td><td valign='top' style='width:151.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>30.1%</p>
</td><td valign='top' style='width:141.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>25.6%</p>
</td><td valign='top' style='width:160.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>31.4%</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:236.55pt'><p style='font:10pt Times New Roman;margin:0'>EPS</p>
</td><td valign='top' style='background-color:#CCEEFF;width:151.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$ 4.041</p>
</td><td valign='top' style='background-color:#CCEEFF;width:141.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$ 2.941</p>
</td><td valign='top' style='background-color:#CCEEFF;width:160.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$ 3.939</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Non-US GAAP (excluding 2020 and 2021 UK DTL changes and TCJA tax adjustments in 2019)</span>:</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:236.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:151.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>2021</span></p>
</td><td valign='top' style='width:141.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>2020</span></p>
</td><td valign='top' style='width:160.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>2019</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:236.55pt'><p style='font:10pt Times New Roman;margin:0'>Net Income</p>
</td><td valign='top' style='background-color:#CCEEFF;width:151.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$15,178</p>
</td><td valign='top' style='background-color:#CCEEFF;width:141.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$11,023</p>
</td><td valign='top' style='background-color:#CCEEFF;width:160.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$14,145</p>
</td></tr>
<tr><td valign='top' style='width:236.55pt'><p style='font:10pt Times New Roman;margin:0'>Net Income Margin</p>
</td><td valign='top' style='width:151.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>30.9%</p>
</td><td valign='top' style='width:141.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>26.1%</p>
</td><td valign='top' style='width:160.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>30.2%</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:236.55pt'><p style='font:10pt Times New Roman;margin:0'>EPS</p>
</td><td valign='top' style='background-color:#CCEEFF;width:151.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$ 4.147</p>
</td><td valign='top' style='background-color:#CCEEFF;width:141.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$ 3.002</p>
</td><td valign='top' style='background-color:#CCEEFF;width:160.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>$ 3.784</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd><i>Please note: &#160;The tax provision adjustments only affected UTMD&#8217;s income tax provision, Net Income and EPS, not consolidated revenues (sales), GP, Operating Income or EBT.</i>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:0pt'> &#160;</kbd><kbd style='margin-left:7.2pt'></kbd>The non-US GAAP financial measures also facilitate management&#8217;s internal comparisons for purposes of planning future performance. The non-US GAAP financial measures disclosed by UTMD should not be considered a substitute for or superior to financial measures calculated in accordance with US GAAP, and the financial results calculated in accordance with US GAAP and reconciliations to those financial statements should be carefully evaluated.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>In short, UTMD realized a substantial recovery in 2021 revenues from 2020, and profitability returned to pre-pandemic levels. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Looking forward to 2022, there remains a significant lack of predictability of demand for UTMD&#8217;s medical devices due to governments&#8217; now entrenched desire to control people&#8217;s health care as a result of the pandemic. Nevertheless, management believes that 2022 sales are likely to be higher than in 2021 due to UTMD having to raise prices of its devices, offset by a slower recovery OUS combined with a stronger USD reducing foreign currency sales. &#160;Because the high rate of inflation in costs and the difficulty in hiring people which resulted from uncontrolled government spending continues to grow at a rate that is likely to exceed the rate of growth in sales, the Company also expects that the rate of growth in Gross Profit in 2021 will be lower than the growth in sales. A lower GPM will be partially offset by better absorption of UTMD&#8217;s high fixed IIA amortization expenses. For the sake of specificity and as an example, UTMD estimates that a 5% increase in sales in 2022 will yield a 1% increase in EBT compared to 2021 results. &#160;&#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>ROE</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Maintaining a high ROE remains a key management objective for UTMD in order to grow without diluting stockholder interest. ROE is the quotient of Net Income divided by average Stockholders&#8217; Equity, but more specifically it is the product of the Net Income margin, productivity of assets and financial leverage. Although UTMD&#8217;s high Net Income margin is the primary factor that continues to drive its ROE, cash dividends to stockholders and repurchase of shares help in lowering average Stockholders&#8217; Equity, reducing the denominator in calculating ROE. The income tax estimate adjustments in all three years had an impact on the overall ROE ratios using US GAAP Net Income. &#160;UTMD&#8217;s 2021 ROE before stockholder dividends (with US GAAP Net Income) was 14.1%. &#160;In comparison, 2020 ROE was 10.6% and 2019 ROE was 15.5%. &#160;&#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>31</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><kbd style='margin-left:9pt'></kbd>Before dividends, UTMD&#8217;s 2021 ROE (using non-US GAAP Net Income) was 14.5% compared to 10.8% in 2020 and 14.9% in 2019, excluding the effect of the tax adjustments on Net Income. &#160;The higher 2021 ROE compared to 2020 was the result of 37.7% higher non-US GAAP Net Income with 3.0% higher average Stockholders&#8217; Equity. Average Stockholders&#8217; Equity was $104,980 in 2021 compared to $101,957 in 2020 and $95,042 in 2019. &#160;UTMD&#8217;s Stockholders&#8217; Equity has more than doubled over the last ten years despite being reduced by $46 million in dividends and $14 million in share repurchases over that same period of time.&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><kbd style='margin-left:9pt'></kbd>Maintaining a high ROE with the dilutive effect of rapidly growing Average Stockholders&#8217; Equity (despite reductions from dividends and stock repurchases), while maintaining excellent Net Income results, suggests an excellent increase in stockholder value. &#160;UTMD&#8217;s average ROE over the last 29 years was 25%. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Liquidity and Capital Resources</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd><span style='border-bottom:1px solid #000000'>Cash Flows</span>. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Net cash provided by operating activities totaled $21,203 compared to $20,137 in 2020 and $17,056 in 2019. &#160;Net Profit at $3,990 higher in 2021 compared to 2020 allowed net cash provided by operating activities in 2020, including adjustments for depreciation and other non-cash operating expenses, along with changes in working capital and the tax benefit attributable to exercise of employee incentive stock options, to be $1,066 higher than in 2020. Total cash provided by operating activities was not in the magnitude of increased Net Profit as a result of changes in 2021 cash required for operating activities compared to 2020 changes (second order derivative), which were a function of the higher 2021 business activity related to recovering from restrictions on nonessential medical procedures during the pandemic, i.e. 1) a $1,705 higher use of cash as a result of increasing trade accounts receivable (A/R) $1,088 instead of the $617 decrease in 2020, &#160;and 2) a $1,408 higher use of cash as a result of increasing inventories $485 instead of the $923 decrease in 2020. Additional changes that consumed more cash in 2021 than in 2020 included a $66 greater reduction in deferred income taxes, a $42 reduction in interest and other receivables instead of a $45 increase in 2020 and an $81 reduction in prepaid expenses and other current assets instead of a $108 increase in 2020. &#160;In addition to higher Net Profit, greater cash was provided in 2021 compared to 2020 from $129 higher non-cash amortization expense, a $32 higher tax benefit attributable to exercise of employee stock options and a $106 higher increase in accrued expenses. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>In investing activities, during 2021 UTMD used $552 in capital expenditures to purchase new molds and manufacturing equipment for new capabilities as well as to maintain, improve or expand existing operating capabilities, compared to investing $860 in 2020.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>In 2021 UTMD received $560 and issued 11,702 shares of stock upon the exercise of employee stock options. Employees exercised a total of 13,711 option shares in 2021, with 2,009 shares immediately being retired as a result of optionees trading the shares in payment of the exercise price of the options. &#160;Option exercises in 2021 were at an average price of $57.40 per share. The Company received a $39 tax benefit from option exercises in 2021. UTMD did not repurchase shares of its stock in the open market during 2021. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>In comparison, in 2020 UTMD received $358 and issued 8,278 shares of stock upon the exercise of employee and director stock options. &#160;Option exercises in 2020 were at an average price of $43.26 per share. The Company received a $7 tax benefit from option exercises in 2020. UTMD repurchased 87,000 shares of its stock in the open market during 2020 at an average cost of $80.19 per share. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>In further comparison, in 2019 UTMD received $283 and issued 7,042 shares of stock upon the exercise of employee and director stock options. &#160;Employees and directors exercised a total of 7,110 option shares in 2019, with 68 shares immediately being retired as a result of optionees trading the shares in payment of the exercise price of the options. &#160;Option exercises in 2019 were at an average price of $40.80 per share. The Company received a $23 tax benefit from option exercises in 2019. UTMD repurchased 5,000 shares of its stock in the open market during 2019 at an average cost of $79.52 per share. &#160;&#160;&#160;&#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>UTMD did not borrow in any of the three years 2019-2021. &#160;Cash dividends paid to stockholders were $11,465 in 2021 compared to $4,116 in 2020 and $4,096 in 2019.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Management believes that future income from operations and effective management of working capital will continue to provide the liquidity needed to finance internal growth plans. &#160;In an uncertain economic environment, UTMD&#8217;s cash balances allow management to operate with the long-term best interest of stockholders in mind. &#160;Planned 2022 capital expenditures for ongoing operations are expected to be about the same in magnitude as depreciation of PP&amp;E, although additional capital expenditure opportunities are being considered. &#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>32</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Management plans to utilize cash not needed to support normal operations in one or a combination of the following: 1) in general, to continue to invest at opportune times in ways that will enhance future profitability; 2) to make additional investments in new technology and/or processes; and/or 3) to acquire a product line or company that will augment revenue and EPS growth and better utilize UTMD&#8217;s existing infrastructure. &#160;If there are no better strategic uses for UTMD&#8217;s cash, the Company will continue to return cash to stockholders in the form of dividends and share repurchases when the stock appears undervalued. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Management's Outlook.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD remains relatively small compared to many other companies, but its employees are experienced and remain diligent in their work. UTMD&#8217;s passion is in providing differentiated clinical solutions that will help improve the effectiveness of medical procedures and reduce health risks, particularly for women and their babies. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The safety, reliability and performance of UTMD&#8217;s medical devices are high and represent significant clinical benefits while providing minimum total cost of care. &#160;UTMD will continue to leverage its reputation as a device innovator and reliable manufacturer which will responsively take on challenges to work with clinicians who use its specialty devices. &#160;In doing so, UTMD will continue to differentiate itself, especially from commodity-oriented competitors. &#160;In 2022, UTMD again plans to &#160;</p>
<p style='font:10pt Times New Roman;margin:0'> &#160;&#160;1) &#160;leverage distribution and manufacturing synergies by further integrating capabilities and resources in its multinational operations; &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>2) &#160;expand manufacturing capacity at a time when resources are particularly scarce;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>3) &#160;focus on effectively differentiating the benefits of the Filshie Clip System in the U.S.;&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:7.2pt'>4) &#160;introduce additional products helpful to clinicians through internal product development; </p>
<p style='font:10pt Times New Roman;margin:0;text-indent:-1.9pt;margin-left:9pt'>5) &#160;continue to achieve excellent overall financial operating performance;</p>
<p style='font:10pt Times New Roman;margin:0;text-indent:-1.9pt;margin-left:9pt'>6) &#160;utilize positive cash generation to continue providing cash dividends to stockholders and make open market share repurchases if/when the UTMD share price seems undervalued; and</p>
<p style='font:10pt Times New Roman;margin:0;text-indent:-1.9pt;margin-left:9pt'>7) &#160;remain vigilant for affordable accretive acquisition opportunities which may be brought about by difficult burdens on small, innovative companies. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The Company has a fundamental focus to do an excellent job in meeting clinicians&#8217; and patients&#8217; needs, while providing stockholders with excellent returns. &#160;In the combined form of cash dividends and share repurchases, UTMD &#8220;returned&#8221; $11,465 (78% of Net Income) to stockholders in 2021 compared to $11,092 (103% of Net Income) in 2020 and $4,494 (31% of Net Income in 2019). &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>In 2021, the value of UTMD&#8217;s stock improved 19%, ending the year at $100.00/ share, while $3.14 in cash dividends/ share were paid. The DJIA, S&amp;P 500 and NASDAQ (where UTMD is traded) indices were up 19%, 27% and 27% respectively in 2021. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'> &#160;&#160;In comparison, in 2020, the value of UTMD&#8217;s stock declined 22%, ending the year at $84.30/ share, while $1.12 in cash dividends/ share were paid. &#160;The DJIA, S&amp;P 500 and NASDAQ (where UTMD is traded) indices were up 7%, 16% and 44% respectively in 2020.</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><kbd style='margin-left:7.2pt'></kbd>In further comparison, in 2019 the value of UTMD&#8217;s stock increased 30%, ending the year at $107.90/ share, while $1.10 in cash dividends/ share were paid. The DJIA, S&amp;P 500 and NASDAQ indices were up 22%, 29% and 35% respectively in 2019.&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><kbd style='margin-left:7.2pt'></kbd>The average compounded appreciation in UTMD stock value for the last 23 years was 12.6% per year, substantially outpacing all of the major indices. Adding dividends, UTMD stockholder value increased at an <span style='border-bottom:1px solid #000000'>annually</span> compounded rate of 13.4% over the last 23 years since 1998.&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:0pt'><kbd style='margin-left:7.2pt'></kbd>Combining share price appreciation as a result of a long term financial performance and a capital allocation strategy that includes opportunistic share repurchases with steadily growing quarterly cash dividends paid to stockholders since 2004, longer term UTMD stockholders have experienced excellent returns. Management is committed to continue that performance.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Off Balance Sheet Arrangements</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>None&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>33</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'>Contractual Obligations</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>The following is a summary of UTMD&#8217;s significant contractual obligations and commitments as of December 31, 2021: &#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:226.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Contractual Obligations and Commitments</span></p>
</td><td valign='top' style='width:97.3pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.6pt;text-align:right'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:3.6pt;text-align:right'><span style='border-bottom:1px solid #000000'>Total</span></p>
</td><td valign='top' style='width:92.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2022</span></p>
</td><td valign='top' style='width:84.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:3.3pt;text-align:right'><span style='border-bottom:1px solid #000000'>2023- 2024</span></p>
</td><td valign='top' style='width:92.65pt'><p style='font:10pt Times New Roman;margin:0;margin-right:1.55pt;text-align:right'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:1.55pt;text-align:right'><span style='border-bottom:1px solid #000000'>2025-2026</span></p>
</td><td valign='top' style='width:96.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'>2027 and thereafter</span></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:226.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:justify'>Long-term debt obligations</p>
</td><td valign='top' style='background-color:#CCEEFF;width:97.3pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.6pt;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;-</p>
</td><td valign='top' style='background-color:#CCEEFF;width:92.65pt'><p style='font:10pt Times New Roman;margin:0;margin-right:1.2pt;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;-</p>
</td><td valign='top' style='background-color:#CCEEFF;width:84.95pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.3pt;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;- </p>
</td><td valign='top' style='background-color:#CCEEFF;width:92.65pt'><p style='font:10pt Times New Roman;margin:0;margin-right:1.55pt;text-align:right'> $ &#160;&#160;&#160;&#160;&#160;&#160;-</p>
</td><td valign='top' style='background-color:#CCEEFF;width:96.25pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.35pt;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;-</p>
</td></tr>
<tr><td valign='top' style='width:226.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:justify'>Operating lease obligations</p>
</td><td valign='top' style='width:97.3pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.6pt;text-align:right'>523</p>
</td><td valign='top' style='width:92.65pt'><p style='font:10pt Times New Roman;margin:0;margin-right:1.2pt;text-align:right'>66</p>
</td><td valign='top' style='width:84.95pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.3pt;text-align:right'>123</p>
</td><td valign='top' style='width:92.65pt'><p style='font:10pt Times New Roman;margin:0;margin-right:1.55pt;text-align:right'>98</p>
</td><td valign='top' style='width:96.25pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.35pt;text-align:right'>236</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:226.95pt'><p style='font:10pt Times New Roman;margin:0'>Purchase obligations </p>
</td><td valign='top' style='background-color:#CCEEFF;width:97.3pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.6pt;text-align:right'><span style='border-bottom:1px solid #000000'>4,368</span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:92.65pt'><p style='font:10pt Times New Roman;margin:0;margin-right:1.2pt;text-align:right'><span style='border-bottom:1px solid #000000'>4,353</span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:84.95pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.3pt;text-align:right'><span style='border-bottom:1px solid #000000'>15</span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:92.65pt'><p style='font:10pt Times New Roman;margin:0;margin-right:1.55pt;text-align:right'><span style='border-bottom:1px solid #000000'>-</span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:96.25pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.35pt;text-align:right'><span style='border-bottom:1px solid #000000'>-</span></p>
</td></tr>
<tr><td valign='top' style='width:226.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:justify'><kbd style='margin-left:20.85pt'></kbd>Total&#160;</p>
</td><td valign='top' style='width:97.3pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.6pt;text-align:right'><span style='border-bottom:3px double #000000'>$ 4,891</span></p>
</td><td valign='top' style='width:92.65pt'><p style='font:10pt Times New Roman;margin:0;margin-right:1.2pt;text-align:right'><span style='border-bottom:3px double #000000'>$ 4,419</span></p>
</td><td valign='top' style='width:84.95pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.3pt;text-align:right'><span style='border-bottom:3px double #000000'>$ &#160;138</span></p>
</td><td valign='top' style='width:92.65pt'><p style='font:10pt Times New Roman;margin:0;margin-right:1.55pt;text-align:right'><span style='border-bottom:3px double #000000'>$ &#160;&#160;&#160;98</span></p>
</td><td valign='top' style='width:96.25pt'><p style='font:10pt Times New Roman;margin:0;margin-right:3.35pt;text-align:right'><span style='border-bottom:3px double #000000'>$ &#160;236</span></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;color:#000000'>Critical Accounting Policies and Estimates</p>
<p style='font:10pt Times New Roman;margin:0;color:#000000;background-color:#FFFFFF'><kbd style='margin-left:9pt'></kbd>The preparation of these financial statements requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities as well as the reported amounts of revenues and expenses during the reporting period. &#160;</p>
<p style='font:10pt Times New Roman;margin:0;color:#000000'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;color:#000000;background-color:#FFFFFF'><kbd style='margin-left:9pt'></kbd>Management bases its estimates and judgments on historical experience, current economic and industry conditions and on various other factors that are believed to be reasonable under the circumstances. This forms the basis for making judgments about the carrying values of assets and liabilities that are not readily available from other sources. Management has identified the following as the Company&#8217;s most critical accounting policies which require significant judgment and estimates. Although management believes its estimates are reasonable, actual results may differ from these estimates under different assumptions or conditions.&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>Allowance for doubtful accounts: The majority of the Company&#8217;s receivables are with healthcare facilities and medical device distributors. &#160;Although the Company has historically not had significant write-offs of bad debt, the possibility exists, particularly with foreign distributors where collection efforts can be difficult or in the event of widespread hospital bankruptcies. &#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>Inventory valuation reserves: &#160;The Company strives to maintain inventory to 1) meet its customers&#8217; needs and 2) optimize manufacturing lot sizes while 3) not tying-up an unnecessary amount of the Company&#8217;s capital increasing the possibility of, among other things, obsolescence. The Company believes its method of reviewing actual and projected demand for its existing inventory allows it to arrive at a fair inventory valuation reserve. While the Company has historically not had significant inventory write-offs, the possibility exists that one or more of its products may become unexpectedly obsolete for which a reserve has not previously been created. The Company&#8217;s historical write-offs have not been materially different from its estimates.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Accounting Policy Changes</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;color:#1F497D'><kbd style='margin-left:7.2pt'></kbd><span style='color:#000000'>The Company&#8217;s management has evaluated the recently issued accounting pronouncements through the filing date&#160;of these financial statements and has determined that the application of these pronouncements will not have a material impact on the Company&#8217;s financial position and results of operations.</span>&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>34</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a15'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 7A - QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The Company had manufacturing operations, including related assets, in the U.S. denominated in the U.S. Dollar (USD), in Ireland denominated in the Euro (EUR), and in England denominated in the British Pound (GBP). UTMD also has trading activities in the U.S. and in subsidiaries in other countries denominated in the USD, EUR, GBP, the Australian Dollar (AUD) and the Canadian Dollar (CAD). &#160;The currencies are subject to exchange rate fluctuations that are beyond the control of UTMD. &#160;The exchange rates were .8790, .8178 and .8907 EUR per USD as of December 31, 2021, 2020 and 2019, respectively. &#160;Exchange rates were .7388, .7319 and .7537 GBP per USD as of December 31, 2021, 2020 and 2019, respectively. Exchange rates were 1.3759, 1.2974 and 1.4226 AUD per USD on December 31, 2021, 2020 and 2019, respectively. Exchange rates were 1.2656, 1.2754 and 1.2962 CAD per USD on December 31, 2021, 2020, and 2019, respectively. Please see note 1 in Item, 8, below under &#8220;Translation of Foreign Currencies&#8221; for more information. &#160;UTMD manages its foreign currency risk without separate hedging transactions by either invoicing customers in the local currency where costs of production were incurred, or by converting currencies as transactions occur.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a16'></a><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><b>ITEM 8 - FINANCIAL STATEMENTS AND SUPPLEMENTARY DATA</b></p>
<p style='font:10pt Times New Roman;margin:0'>Currency amounts are in thousands except per-share amounts and where noted.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td colspan='2' valign='top' style='width:100%'><p style='font:10pt Times New Roman;margin:0;text-align:center'><b>TABLE OF CONTENTS</b></p>
</td></tr>
<tr><td valign='top' style='width:84.28%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:84.28%'><p style='font:10pt Times New Roman;margin:0'>Management&#8217;s Report on Internal Control Over Financial Reporting</p>
</td><td valign='top' style='background-color:#CCEEFF;width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>36</p>
</td></tr>
<tr><td valign='top' style='width:84.28%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:84.28%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'>Report of Independent Registered Public Accounting Firm (Haynie) on Financial Statements </p>
<p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'><kbd style='margin-left:18pt'></kbd>and the Company&#8217;s Internal Control Over Financial Reporting&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>37</p>
</td></tr>
<tr><td valign='top' style='width:84.28%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr style='height:11.5pt'><td valign='top' style='background-color:#CCEEFF;width:84.28%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'>Report of Independent Registered Public Accounting Firm (Nortons) on Financial Statements</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'><kbd style='margin-left:18pt'></kbd>and the Company&#8217;s Internal Control Over Financial Reporting&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>38</p>
</td></tr>
<tr><td valign='top' style='width:84.28%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:84.28%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'>Consolidated Balance Sheets</p>
</td><td valign='top' style='background-color:#CCEEFF;width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>39</p>
</td></tr>
<tr><td valign='top' style='width:84.28%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:84.28%'><p style='font:10pt Times New Roman;margin:0'>Consolidated Statements of Income and Comprehensive Income</p>
</td><td valign='top' style='background-color:#CCEEFF;width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>40</p>
</td></tr>
<tr><td valign='top' style='width:84.28%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:84.28%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'>Consolidated Statements of Cash Flow</p>
</td><td valign='top' style='background-color:#CCEEFF;width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>41</p>
</td></tr>
<tr><td valign='top' style='width:84.28%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:84.28%'><p style='font:10pt Times New Roman;margin:0'>Consolidated Statements of Stockholders&#8217; Equity</p>
</td><td valign='top' style='background-color:#CCEEFF;width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>42</p>
</td></tr>
<tr><td valign='top' style='width:84.28%'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:84.28%'><p style='font:10pt Times New Roman;margin:0;margin-right:42.3pt'>Notes to Consolidated Financial Statements</p>
</td><td valign='top' style='background-color:#CCEEFF;width:15.72%'><p style='font:10pt Times New Roman;margin:0;text-align:center'>43</p>
</td></tr>
</table>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>35</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'><b>MANAGEMENT&#8217;S REPORT ON INTERNAL CONTROL</b></p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'><b>OVER FINANCIAL REPORTING</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:5pt;margin-bottom:5pt'>Management of the Company is responsible for establishing and maintaining adequate internal control over financial reporting as defined in Rules&#160;13a-15(f) and 15d-15(f) under the Securities Exchange Act of 1934. The Company's internal control over financial reporting is designed to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with accounting principles generally accepted in the United States of America (&quot;GAAP&quot;). The Company's internal control over financial reporting includes those policies and procedures that </p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Symbol;margin-left:0pt'>&#183;</kbd><kbd style='margin-left:36pt'></kbd>pertain to the maintenance of records that, in reasonable detail, accurately and fairly reflect the transactions and dispositions of the assets of the Company; &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Symbol;margin-left:0pt'>&#183;</kbd><kbd style='margin-left:36pt'></kbd>provide reasonable assurance that transactions are recorded as necessary to permit preparation of financial statements in accordance with GAAP, and that receipts and expenditures of the Company are being made only in accordance with authorizations of management and directors of the Company; and &#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Symbol;margin-left:0pt'>&#183;</kbd><kbd style='margin-left:36pt'></kbd>provide reasonable assurance regarding prevention or timely detection of unauthorized acquisition, use or disposition of the Company's assets that could have a material effect on the financial statements. &#160;</p>
<p style='font:10pt Times New Roman;margin-top:5pt;margin-bottom:5pt'>Because of its inherent limitations, internal control over financial reporting may not prevent or detect misstatements. Also, projections of any evaluation of effectiveness to future periods are subject to the risk that controls may become inadequate because of changes in conditions, or that the degree of compliance with the policies or procedures may deteriorate. </p>
<p style='font:10pt Times New Roman;margin-top:5pt;margin-bottom:5pt'>The Company&#8217;s management assessed the effectiveness of the Company's internal control over financial reporting as of December&#160;31, 2021. In making this assessment, management used the criteria set forth by the Committee of Sponsoring Organizations of the Treadway Commission (COSO) in <i>Internal Control-Integrated Framework (2013)</i>. </p>
<p style='font:10pt Times New Roman;margin:0'>Based on its assessment and those criteria, management believes that the Company maintained effective internal control over financial reporting as of December&#160;31, 2021. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>By: <span style='border-bottom:1px solid #000000'>/s/ Kevin L. Cornwell </span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Kevin L. Cornwell&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Chief Executive Officer&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>By: <span style='border-bottom:1px solid #000000'>/s/ Brian L. Koopman &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;</span></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Brian L. Koopman&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Principal Financial Officer&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>36</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:center'><b>REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</b></p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt'>To the Board of Directors and<br/>Stockholders of Utah Medical Products, Inc. </p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'><b>Opinion on the Financial Statements</b></p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'>We have audited the accompanying balance sheets of Utah Medical Products, Inc. (the Company) as of December 31, 2021 and 2020, and the related statements of income, comprehensive income, stockholders&#8217; equity, and cash flows for each of the years in the two-year period ended December 31, 2021 and the related notes (collectively referred to as the financial statements). In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2021 and 2020, and the results of its operations and its cash flows for each of the years in the two-year period ended December 31, 2021 in conformity with accounting principles generally accepted in the United States of America.</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'>We did not audit portions of the consolidated financial statements for Femcare Group Limited, a wholly owned subsidiary. The portions not audited by us include assets of $26,752,000 and $28,666,000 as of December 31, 2021 and 2020, respectively and total revenues of $4,419,000 and $4,871,000 for the years ended December 31, 2021 and 2020, respectively. Those portions of the consolidated financial statements were audited by other auditors whose reports have been furnished to us, and our opinions, insofar as they relate to the amounts included for Femcare Group Limited is based solely on the reports of the other auditors.</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'><b>Basis for Opinion</b></p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'>These financial statements are the responsibility of the Company&#8217;s management. Our responsibility is to express an opinion on the Company&#8217;s financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) (PCAOB) and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB. We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. The Company is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part of our audits, we are required to obtain an understanding of internal control over financial reporting, but not for the purpose of expressing an opinion on the effectiveness of the Company&#8217;s internal control over financial reporting. Accordingly, we express no such opinion.</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'>Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion. </p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'><b>Critical Audit Matters</b></p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'>The critical audit matters communicated below are matters arising from the current period audit of the financial statements that were communicated or required to be communicated to the audit committee and that: (1) relate to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matters below, providing separate opinions on the critical audit matters or on the accounts or disclosures to which they relate.</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'><i>Evaluation of income taxes</i></p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'><span style='border-bottom:1px solid #000000'>Description of the Matter:</span></p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'>As discussed in Note 1 to the consolidated financial statements, the Company operates in many parts in the world through its&#8217; subsidiaries. The Company or one of its&#8217; subsidiaries will file a tax return in the U.S. federal jurisdiction, in the United Kingdom, in Australia, in Ireland, and in Canada. Due to the complexity with dealing in multiple currencies/countries, along with the various tax laws and significant management judgment, we believe the account to be a critical audit matter.</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'><span style='border-bottom:1px solid #000000'>How We Addressed the Matter in Our Audit:</span></p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;text-align:justify'>We evaluated the appropriateness and consistency of management's methods and assumptions used in the identification, recognition, measurement, and disclosures of its' taxes. We read and evaluated management's documentation, including relevant accounting policies and information obtained by management from the outside tax specialists engaged to assist with their taxes.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-22.5pt;text-align:justify'>/s/ Haynie &amp; Company</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-22.5pt;text-align:justify'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-22.5pt;text-align:justify'><ix:nonNumeric name='dei:AuditorName' contextRef='Y21' escape='true'>Haynie &amp; Company</ix:nonNumeric></p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-22.5pt;text-align:justify'><ix:nonNumeric name='dei:AuditorLocation' contextRef='Y21' escape='true'>Salt Lake City, Utah</ix:nonNumeric> </p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-22.5pt;text-align:justify'>March 25, 2022</p>
<p style='font:10pt Times New Roman;margin:0;margin-right:-22.5pt;text-align:justify'>Firm ID: <ix:nonNumeric name='dei:AuditorFirmId' contextRef='Y21' escape='true'>457</ix:nonNumeric></p>
<p style='font:10pt Times New Roman;margin:0'>We have served as the Company&#8217;s auditor since 2018.</p>
<p style='font:10pt Times New Roman;margin-top:6pt;margin-bottom:6pt;margin-right:-22.5pt'>&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>37</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt;text-align:center'><b> </b>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt;text-align:center'><b>REPORT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</b></p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'>To the Board of Directors and Stockholders<br/>of Utah Medical Products, Inc .</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'><b>Opinion on the Financial Statements</b></p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'>We have audited the consolidated balance sheets of Femcare Group Limited (the Company), including its subsidiaries, as of December 31, 2021 and 2020, and the related consolidated statements of income, comprehensive income, stockholders&#8217; equity, and cash flows for each of the years in the two-year period ended December 31, 2021, and the related notes (collectively referred to as the financial statements). In our opinion, the financial statements present fairly, in all material respects, the financial position of the Company as of December 31, 2021 and 2020, and the results of its operations and its cash flows for each of the years in the two-year period ended December 31, 2021, in conformity with accounting principles generally accepted in the United States of America.</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'><b>Basis for Opinion</b></p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'>These financial statements are the responsibility of the Company&#8217;s management. Our responsibility is to express an opinion on the Company&#8217;s financial statements based on our audits. We are a public accounting firm registered with the Public Company Accounting Oversight Board (United States) (PCAOB) and are required to be independent with respect to the Company in accordance with the U.S. federal securities laws and the applicable rules and regulations of the Securities and Exchange Commission and the PCAOB. </p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'>We conducted our audits in accordance with the standards of the PCAOB. Those standards require that we plan and perform the audit to obtain reasonable assurance about whether the financial statements are free of material misstatement, whether due to error or fraud. The Company is not required to have, nor were we engaged to perform, an audit of its internal control over financial reporting. As part of our audits, we are required to obtain an understanding of internal control over financial reporting, but not for the purpose of expressing an opinion on the effectiveness of the Company&#8217;s internal control over financial reporting. Accordingly, we express no such opinion. </p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'>Our audits included performing procedures to assess the risks of material misstatement of the financial statements, whether due to error or fraud, and performing procedures that respond to those risks. Such procedures included examining, on a test basis, evidence regarding the amounts and disclosures in the financial statements. Our audits also included evaluating the accounting principles used and significant estimates made by management, as well as evaluating the overall presentation of the financial statements. We believe that our audits provide a reasonable basis for our opinion.</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'><b>Critical Audit Matters</b></p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'>The critical audit matters communicated below are matters arising from the current period audit of the financial statements that were communicated or required to be communicated to the audit committee and that: (1) relate to accounts or disclosures that are material to the financial statements and (2) involved our especially challenging, subjective, or complex judgments. The communication of critical audit matters does not alter in any way our opinion on the financial statements, taken as a whole, and we are not, by communicating the critical audit matters below, providing separate opinions on the critical audit matters or on the accounts or disclosures to which they relate.</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'>The accounting policy in respect of revenue is that revenue is recognised to the extent that it is probable that the economic benefits will flow to the Company and the revenue can be reliably measured. Revenue is measured as the fair value of the consideration received or receivable, excluding discounts, rebates, value added tax and other sales taxes.</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'>We identified the assessment of the revenue as a critical audit matter due to its inherent risk of understatement. The primary procedures we performed to address this critical audit matter included the following. We tested certain internal controls over the Company&#8217;s process for dispatching goods and raising invoices to customers. We tested a sample of orders during the year to establish that these were dispatched and invoiced. &#160;We evaluated the Company&#8217;s determination of the recoverability of any unpaid receivables at 31 December 2021.</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:12pt'>We also identified the assessment of the valuation of intangible assets as a critical audit matter. &#160;Intangible assets are valued at cost and amortised using the straight-line method over the useful economic life of the asset. Goodwill is carried at cost and tested for impairment annually. We identified the valuation of intangible assets and goodwill as a critical audit matter due to their materiality to the financial statements. We reviewed and tested the Company&#8217;s calculations in respect of amortisation and evaluated the Company&#8217;s determination of the carrying value as at 31 December 2021.</p>
<p style='font:10pt Times New Roman;margin:0;color:#000000'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;color:#000000'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt'>NORTONS ASSURANCE LIMITED</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt'>We have served as the Company&#8217;s auditor since 2011.</p>
<p style='font:10pt Times New Roman;margin:0'>Reading, United Kingdom</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt'>March 25, 2022</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>38</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<table style='border-collapse:collapse;width:100%;margin-left:4.65pt'><tr style='height:12.75pt'><td colspan='4' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>UTAH MEDICAL PRODUCTS, INC.</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='4' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>CONSOLIDATED BALANCE SHEETS AS OF</span></p>
</td></tr>
<tr style='height:8.25pt'><td colspan='4' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>DECEMBER 31, 2021 AND 2020</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='4' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>(In thousands)</p>
</td></tr>
<tr style='height:21pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:19.5pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'></td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td></tr>
<tr style='height:19.5pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:justify'><span style='border-bottom:1px solid #000000'>ASSETS</span></p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Current assets:</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Cash</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;<ix:nonFraction name='us-gaap:CashAndCashEquivalentsAtCarryingValue' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>60,974</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;<ix:nonFraction name='us-gaap:CashAndCashEquivalentsAtCarryingValue' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>51,590</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Accounts &amp; other receivables, net (note 2)</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccountsReceivableNetCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>5,132</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccountsReceivableNetCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,104</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Inventories (note 2)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryNet' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,596</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryNet' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,222</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Prepaid expenses and other current assets</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherAssetsCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>456</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherAssetsCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>346</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Total current assets</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AssetsCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>73,158</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AssetsCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>62,262</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Property and equipment, net (notes 4 and 10)</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,067</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,326</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:justify'>Goodwill</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Goodwill' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,098</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Goodwill' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,164</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Other intangible assets (note 2)</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>55,865</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>56,159</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Other intangible assets - accumulated amortization</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>38,552</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>32,166</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Other intangible assets, net (note 2)</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IntangibleAssetsNetExcludingGoodwill' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>17,313</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IntangibleAssetsNetExcludingGoodwill' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>23,993</ix:nonFraction></p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Total assets</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;<ix:nonFraction name='us-gaap:Assets' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>115,636</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;<ix:nonFraction name='us-gaap:Assets' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>111,745</ix:nonFraction></p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:justify'><span style='border-bottom:1px solid #000000'>LIABILITIES AND STOCKHOLDERS' EQUITY</span></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Current liabilities:</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Accounts payable</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:AccountsPayableCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>761</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:AccountsPayableCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>788</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Accrued expenses (note 2)</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccruedLiabilitiesCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,984</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccruedLiabilitiesCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,003</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Total current liabilities</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:LiabilitiesCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,745</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:LiabilitiesCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,791</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:justify'>Long term lease liability</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseLiabilityNoncurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>396</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseLiabilityNoncurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>335</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:justify'>Long term income tax payable (REPAT tax) (note 7)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,675</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,995</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:justify'>Deferred tax liability - intangible assets</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,105</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,151</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Deferred income taxes (note 7)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredIncomeTaxLiabilitiesNet' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>577</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredIncomeTaxLiabilitiesNet' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>651</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Total liabilities</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Liabilities' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,498</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Liabilities' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,923</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Commitments and contingencies (notes 6 and 12)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CommitmentsAndContingencies' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>0</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CommitmentsAndContingencies' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>0</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Stockholders' equity:</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Common stock, $<ix:nonFraction name='us-gaap:CommonStockParOrStatedValuePerShare' contextRef='E21' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:CommonStockParOrStatedValuePerShare' contextRef='E20' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.01</ix:nonFraction></ix:nonFraction> par value; <ix:nonFraction name='us-gaap:CommonStockSharesAuthorized' contextRef='E21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:CommonStockSharesAuthorized' contextRef='E20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>50,000</ix:nonFraction></ix:nonFraction> shares authorized, <ix:nonFraction name='us-gaap:CommonStockSharesIssued' contextRef='E21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:CommonStockSharesOutstanding' contextRef='E21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,655</ix:nonFraction></ix:nonFraction> shares issued and outstanding in 2021 and <ix:nonFraction name='us-gaap:CommonStockSharesIssued' contextRef='E20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:CommonStockSharesOutstanding' contextRef='E20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,643</ix:nonFraction></ix:nonFraction> shares in 2020</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CommonStockValue' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>37</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CommonStockValue' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>36</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Accumulated other comprehensive loss</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1' contextRef='E21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,054</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1' contextRef='E20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,281</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Additional paid-in capital</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AdditionalPaidInCapitalCommonStock' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>841</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AdditionalPaidInCapitalCommonStock' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>115</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Retained earnings</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RetainedEarningsAccumulatedDeficit' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>115,314</ix:nonFraction></p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RetainedEarningsAccumulatedDeficit' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>110,952</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Total stockholders' equity</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>107,138</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:StockholdersEquity' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>102,822</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='background-color:#CCEEFF;width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Total liabilities and stockholders' equity</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;<ix:nonFraction name='us-gaap:LiabilitiesAndStockholdersEquity' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>115,636</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;<ix:nonFraction name='us-gaap:LiabilitiesAndStockholdersEquity' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>111,745</ix:nonFraction></p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt;border-top:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='width:746.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='font-size:8pt'><i>S</i><i>ee</i><i> accompanying notes to financial statements.</i></span></p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:34.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:315.2pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>39</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<table style='border-collapse:collapse;width:100%;margin-left:4.65pt'><tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>UTAH MEDICAL PRODUCTS, INC.</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>CONSOLIDATED STATEMENTS OF INCOME AND COMPREHENSIVE INCOME FOR THE</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>YEARS ENDED DECEMBER 31, 2021, 2020 AND 2019</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>(In thousands, except per share amounts)</p>
</td></tr>
<tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'></td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Sales, net (notes 1, 3, 9 and 11)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>49,054</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>42,178</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;<ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>46,904</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Cost of goods sold</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CostOfGoodsAndServicesSold' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>18,137</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CostOfGoodsAndServicesSold' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16,630</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CostOfGoodsAndServicesSold' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>17,438</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Gross profit</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>30,917</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>25,548</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>29,466</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Operating expense:</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Sales and marketing</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:SellingAndMarketingExpense' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,414</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:SellingAndMarketingExpense' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,554</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:SellingAndMarketingExpense' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,738</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Research and development</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ResearchAndDevelopmentExpense' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>526</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ResearchAndDevelopmentExpense' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>486</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ResearchAndDevelopmentExpense' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>483</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'> General and administrative</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GeneralAndAdministrativeExpense' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,097</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GeneralAndAdministrativeExpense' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,800</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GeneralAndAdministrativeExpense' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,613</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Operating income</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingIncomeLoss' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>18,880</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingIncomeLoss' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>13,708</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingIncomeLoss' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>17,632</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Other income (expense):</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Dividend and interest income</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherInterestAndDividendIncome' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>166</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherInterestAndDividendIncome' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>112</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherInterestAndDividendIncome' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>254</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Royalty income (note 12)</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RoyaltyIncomeNonoperating' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>15</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RoyaltyIncomeNonoperating' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>20</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RoyaltyIncomeNonoperating' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Other, net</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherNonoperatingIncomeExpense' contextRef='Y21' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherNonoperatingIncomeExpense' contextRef='Y20' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:OtherNonoperatingIncomeExpense' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Income before provision for income taxes</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>19,061</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>13,840</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>17,884</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Provision for income taxes (note 7)</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxExpenseBenefit' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,273</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxExpenseBenefit' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,042</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxExpenseBenefit' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,157</ix:nonFraction></p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Net income</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,788</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,798</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,727</ix:nonFraction></p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Earnings per common share (basic) (note 1)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:EarningsPerShareBasic' contextRef='Y21' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>4.05</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:EarningsPerShareBasic' contextRef='Y20' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>2.95</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:EarningsPerShareBasic' contextRef='Y19' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>3.96</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Earnings per common share (diluted) (note 1)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y21' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>4.04</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y20' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>2.94</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y19' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>3.94</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Other comprehensive income (loss):</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:23.25pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Foreign currency translation net of taxes of $<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax' contextRef='Y21' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax' contextRef='Y20' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'><ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax' contextRef='Y19' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>0</ix:nonFraction></ix:nonFraction></ix:nonFraction> in all periods</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;(<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>773</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,502</ix:nonFraction></p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,507</ix:nonFraction></p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='background-color:#CCEEFF;width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Total comprehensive income</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.8pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ComprehensiveIncomeNetOfTax' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,015</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ComprehensiveIncomeNetOfTax' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>12,300</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ComprehensiveIncomeNetOfTax' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16,234</ix:nonFraction></p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>&#160;</p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt;border-top:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-top:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt;border-top:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='width:648.55pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='font-size:8pt'><i>S</i><i>ee</i><i> accompanying notes to financial statements.</i></span></p>
</td><td valign='bottom' style='width:63.9pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:63.8pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:190.7pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
</table>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>40</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
<table style='border-collapse:collapse;width:100%;margin-left:4.65pt'><tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>UTAH MEDICAL PRODUCTS, INC.</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>CONSOLIDATED STATEMENTS OF CASH FLOW FOR THE</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>YEARS ENDED DECEMBER 31, 2021, 2020 AND 2019</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>(In thousands)</p>
</td></tr>
<tr style='height:12.75pt'><td colspan='7' valign='bottom' style='width:1412.25pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'></td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Cash flows from operating activities:</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Net income</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,788</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,798</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,727</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Adjustments to reconcile net income to net<br/> &#160;cash provided by operating activities:</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Depreciation</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Depreciation' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>636</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Depreciation' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>655</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Depreciation' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>700</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Amortization</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AmortizationOfIntangibleAssets' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,645</ix:nonFraction></p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AmortizationOfIntangibleAssets' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,515</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AmortizationOfIntangibleAssets' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,144</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Provision for losses on accounts receivable</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProvisionForDoubtfulAccounts' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>24</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:ProvisionForDoubtfulAccounts' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>5</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProvisionForDoubtfulAccounts' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Amortization of operating lease assets</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3</ix:nonFraction></p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>39</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>38</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Loss/(Gain) on disposal of assets</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:GainLossOnDispositionOfAssets' contextRef='Y21' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:GainLossOnDispositionOfAssets' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:GainLossOnDispositionOfAssets' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Deferred income taxes</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:DeferredIncomeTaxExpenseBenefit' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>92</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:DeferredIncomeTaxExpenseBenefit' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>26</ix:nonFraction>)</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:DeferredIncomeTaxExpenseBenefit' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>396</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Stock-based compensation expense</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensation' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>166</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensation' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>160</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensation' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>113</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Tax benefit attributable to exercise of stock options</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>39</ix:nonFraction></p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>23</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'> (Increase) decrease in:</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Accounts receivable</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInAccountsReceivable' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,088</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncreaseDecreaseInAccountsReceivable' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>617</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInAccountsReceivable' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>738</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Other receivables</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInOtherReceivables' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>42</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncreaseDecreaseInOtherReceivables' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>45</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInOtherReceivables' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Inventories</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInInventories' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>485</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncreaseDecreaseInInventories' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>924</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInInventories' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,686</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Prepaid expenses and other current assets</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>81</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>108</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Increase (decrease) in:</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Accounts payable</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInAccountsPayable' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>23</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInAccountsPayable' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>308</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncreaseDecreaseInAccountsPayable' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>114</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'>Accrued expenses</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncreaseDecreaseInAccruedLiabilities' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>713</ix:nonFraction></p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncreaseDecreaseInAccruedLiabilities' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>607</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncreaseDecreaseInAccruedLiabilities' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,651</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:20.9pt'> Long-term repatriation tax payable</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' contextRef='Y21' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' contextRef='Y20' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>330</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Net cash provided by operating activities</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:NetCashProvidedByUsedInOperatingActivities' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>21,203</ix:nonFraction></p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:NetCashProvidedByUsedInOperatingActivities' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>20,137</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:NetCashProvidedByUsedInOperatingActivities' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>17,056</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Cash flows from investing activities:</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Capital expenditures for:</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Property and equipment</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:PaymentsToAcquirePropertyPlantAndEquipment' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>552</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:PaymentsToAcquirePropertyPlantAndEquipment' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>860</ix:nonFraction>)</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:PaymentsToAcquirePropertyPlantAndEquipment' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>540</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Intangible assets</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:PaymentsToAcquireIntangibleAssets' contextRef='Y21' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:PaymentsToAcquireIntangibleAssets' contextRef='Y20' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:PaymentsToAcquireIntangibleAssets' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>21,000</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Net cash (used in) investing activities</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:NetCashProvidedByUsedInInvestingActivities' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>552</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:NetCashProvidedByUsedInInvestingActivities' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>860</ix:nonFraction>)</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:NetCashProvidedByUsedInInvestingActivities' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>21,540</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Cash flows from financing activities:</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Proceeds from issuance of common stock - options</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProceedsFromIssuanceOfCommonStock' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>560</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProceedsFromIssuanceOfCommonStock' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>358</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProceedsFromIssuanceOfCommonStock' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>283</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Common stock purchased and retired</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PaymentsForRepurchaseOfCommonStock' contextRef='Y21' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:PaymentsForRepurchaseOfCommonStock' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,976</ix:nonFraction>)</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:PaymentsForRepurchaseOfCommonStock' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>398</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Dividends paid</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:PaymentsOfDividends' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,465</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:PaymentsOfDividends' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,116</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:PaymentsOfDividends' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,112</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Net cash (used in) financing activities</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:NetCashProvidedByUsedInFinancingActivities' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,905</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:NetCashProvidedByUsedInFinancingActivities' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,734</ix:nonFraction>)</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:NetCashProvidedByUsedInFinancingActivities' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,227</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Effect of exchange rate changes on cash</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>362</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>260</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>386</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:38.9pt'>Net increase (decrease) in cash and cash equivalents</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,384</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,803</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,325</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Cash at beginning of year</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CashAndCashEquivalentsAtCarryingValue' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>51,590</ix:nonFraction></p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CashAndCashEquivalentsAtCarryingValue' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>42,787</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CashAndCashEquivalentsAtCarryingValue' contextRef='E18' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>51,112</ix:nonFraction></p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Cash at end of year</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;<ix:nonFraction name='us-gaap:CashAndCashEquivalentsAtCarryingValue' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>60,974</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;<ix:nonFraction name='us-gaap:CashAndCashEquivalentsAtCarryingValue' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>51,590</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;<ix:nonFraction name='us-gaap:CashAndCashEquivalentsAtCarryingValue' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>42,787</ix:nonFraction></p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt;border-top:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt;border-top:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:13.5pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>SUPPLEMENTAL DISCLOSURE OF CASH FLOW INFORMATION:</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Cash paid during the period for income taxes</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:IncomeTaxesPaid' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,617</ix:nonFraction></p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:IncomeTaxesPaid' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,186</ix:nonFraction></p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:IncomeTaxesPaid' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>5,304</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='background-color:#CCEEFF;width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>Cash paid during the period for interest</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InterestPaid' contextRef='Y21' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InterestPaid' contextRef='Y20' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InterestPaid' contextRef='Y19' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;margin-left:10.1pt'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:516.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='font-size:8pt'><i>S</i><i>ee</i><i> accompanying notes to financial statements.</i></span></p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:245.1pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:62.85pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:217.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
</table>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>41</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%;margin-left:4.3pt'><tr style='height:12.75pt'><td colspan='12' valign='bottom' style='width:1412.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>UTAH MEDICAL PRODUCTS, INC.</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='12' valign='bottom' style='width:1412.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>CONSOLIDATED STATEMENTS OF STOCKHOLDERS&#8217; EQUITY FOR THE</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='12' valign='bottom' style='width:1412.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>YEARS ENDED DECEMBER 31, 2021, 2020 AND 2019</span></p>
</td></tr>
<tr style='height:12.75pt'><td colspan='12' valign='bottom' style='width:1412.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>(In thousands)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Accumulated</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Additional</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Other</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Total</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td colspan='3' valign='bottom' style='width:263.15pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Common Stock</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Paid-in</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Comprehensive</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Retained</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Stockholders'</p>
</td></tr>
<tr style='height:12.75pt'><td valign='bottom' style='width:345.35pt'></td><td valign='bottom' style='width:113.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Shares</p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:121pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Amount</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Capital</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Income</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Earnings</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Equity</p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Balance at December 31, 2018</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:113.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:SharesOutstanding' contextRef='E18_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,720</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:121pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E18_StEqComps-CommonStock' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>37</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:150.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E18_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>122</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:199.4pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E18_StEqComps-ComprIncome' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,290</ix:nonFraction>)</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:158.3pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E18_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>100,123</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:180.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E18' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>88,992</ix:nonFraction></p>
</td></tr>
<tr style='height:25.5pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Shares issued upon exercise of employee <br/> &#160;stock options for cash</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised' contextRef='Y19_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>7</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y19_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>290</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y19_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y19_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>290</ix:nonFraction></p>
</td></tr>
<tr style='height:27pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Shares received and retired upon exercise <br/> &#160;of stock options</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' contextRef='Y19_StEqComps-CommonStock' unitRef='Shares' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y19_StEqComps-AddPaidInCap' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y19_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y19_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Stock option compensation expense</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y19_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>113</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y19_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y19_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>113</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Common stock purchased and retired</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodShares' contextRef='Y19_StEqComps-CommonStock' sign='-' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>5</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y19_StEqComps-AddPaidInCap' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>499</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y19_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y19_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>101</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>398</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Foreign currency translation adjustment</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y19_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y19_StEqComps-ComprIncome' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,507</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y19_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,507</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Common stock dividends</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y19_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y19_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y19_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,132</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,132</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Net income</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,727</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,727</ix:nonFraction></p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Balance at December 31, 2019</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:113.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:SharesOutstanding' contextRef='E19_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,722</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:121pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E19_StEqComps-CommonStock' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>37</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:150.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E19_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>18</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:199.4pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E19_StEqComps-ComprIncome' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,782</ix:nonFraction>)</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:158.3pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E19_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>110,820</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:180.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>101,093</ix:nonFraction></p>
</td></tr>
<tr style='height:25.5pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Shares issued upon exercise of employee <br/> &#160;stock options for cash</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised' contextRef='Y20_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>8</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y20_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y20_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>358</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y20_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y20_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>358</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Stock option compensation expense</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y20_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y20_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y20_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>160</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y20_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y20_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>160</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Common stock purchased and retired</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodShares' contextRef='Y20_StEqComps-CommonStock' sign='-' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>87</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y20_StEqComps-CommonStock' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y20_StEqComps-AddPaidInCap' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>421</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y20_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y20_StEqComps-RetainedEarnings' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,555</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockRepurchasedAndRetiredDuringPeriodValue' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,976</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Foreign currency translation adjustment</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y20_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y20_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y20_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y20_StEqComps-ComprIncome' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,502</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y20_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,502</ix:nonFraction></p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Common stock dividends</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y20_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y20_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y20_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y20_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y20_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,112</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,112</ix:nonFraction>)</p>
</td></tr>
<tr style='height:12.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Net income</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,798</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,798</ix:nonFraction></p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Balance at December 31, 2020</p>
</td><td valign='middle' style='width:113.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:SharesOutstanding' contextRef='E20_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,643</ix:nonFraction></p>
</td><td valign='middle' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:121pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E20_StEqComps-CommonStock' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>36</ix:nonFraction></p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:150.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E20_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>115</ix:nonFraction></p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:199.4pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E20_StEqComps-ComprIncome' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,280</ix:nonFraction>)</p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:158.3pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E20_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>110,951</ix:nonFraction></p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:180.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>102,822</ix:nonFraction></p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Shares issued upon exercise of employee <br/> &#160;stock options for cash</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised' contextRef='Y21_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>14</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y21_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>787</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y21_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y21_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>787</ix:nonFraction></p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Shares received and retired upon exercise <br/> &#160;of stock options</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' contextRef='Y21_StEqComps-CommonStock' sign='-' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>2</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y21_StEqComps-AddPaidInCap' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>227</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y21_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y21_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>227</ix:nonFraction>)</p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Stock option compensation expense</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y21_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>166</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y21_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y21_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockOptionPlanExpense' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>166</ix:nonFraction></p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Foreign currency translation adjustment</p>
</td><td valign='bottom' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y21_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y21_StEqComps-ComprIncome' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>773</ix:nonFraction>)</p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y21_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>773</ix:nonFraction>)</p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Common stock dividends</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y21_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y21_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y21_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,425</ix:nonFraction>)</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='background-color:#CCEEFF;width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:DividendsCommonStockCash' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,425</ix:nonFraction>)</p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Net income</p>
</td><td valign='bottom' style='width:113.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:121pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21_StEqComps-CommonStock' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:150.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:199.4pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21_StEqComps-ComprIncome' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:158.3pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,788</ix:nonFraction></p>
</td><td valign='bottom' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:180.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,788</ix:nonFraction></p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='background-color:#CCEEFF;width:345.35pt'><p style='font:10pt Times New Roman;margin:0'> Balance at December 31, 2021</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:113.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'> &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:SharesOutstanding' contextRef='E21_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,655</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:121pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E21_StEqComps-CommonStock' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>36</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:150.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E21_StEqComps-AddPaidInCap' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>842</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:199.4pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;(<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E21_StEqComps-ComprIncome' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,053</ix:nonFraction>)</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:158.3pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E21_StEqComps-RetainedEarnings' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>115,314</ix:nonFraction></p>
</td><td valign='middle' style='background-color:#CCEEFF;width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:180.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$ &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;<ix:nonFraction name='us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>107,138</ix:nonFraction></p>
</td></tr>
<tr style='height:18.75pt'><td valign='middle' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='middle' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:18.75pt'><td valign='bottom' style='width:345.35pt'><p style='font:10pt Times New Roman;margin:0'><span style='font-size:8pt'><i>S</i><i>ee</i><i> accompanying notes to financial statements.</i></span></p>
</td><td valign='middle' style='width:113.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:121pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:150.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:199.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:158.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:28.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:180.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>42</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>Utah Medical Products, Inc.</p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'>Notes to Consolidated Financial Statements</p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'>Years Ended December 31, 2021, 2020 and 2019</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Currency amounts are in thousands except per-share amounts and where noted.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:SignificantAccountingPoliciesTextBlock' contextRef='Y21' escape='true' continuedAt='c1'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 1 &#8211;&#160;Summary of Significant Accounting Policies</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Organization</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Utah Medical Products, Inc. with headquarters in Midvale, Utah and its wholly-owned operating subsidiaries, Femcare Limited located in Romsey, Hampshire, England, Femcare Australia Pty Ltd located in Castle Hill, NSW, Australia, Utah Medical Products Canada, Inc. (dba Femcare Canada) located in Mississauga, Ontario, Canada and Utah Medical Products Ltd., which operates a manufacturing facility in Athlone, Ireland, (in the aggregate, the Company) are in the primary business of developing, manufacturing and globally distributing specialized medical devices for the healthcare industry. &#160;The Company&#8217;s broad range of products includes those used in critical care areas and the labor and delivery departments of hospitals, as well as outpatient clinics and physicians&#8217; offices. &#160;Products are sold directly to end-user facilities in the U.S., Ireland, UK, Canada, France and Australia, and through third party distributors in other outside the U.S. (OUS) markets. &#160;Domestically, until February 1, 2019, Femcare had an exclusive U.S. distribution relationship with CooperSurgical, Inc. (CSI) for the Filshie Clip System. &#160;UTMD also sells subcontract manufactured components and finished products to over 150 companies in the U.S. for their medical and non-medical products.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:UseOfEstimates' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Use of Estimates in the Preparation of Financial Statements</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>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. &#160;Although actual results could differ from those estimates, management believes it has considered and disclosed all relevant information in making its estimates that materially affect reported performance and current values.</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:ConsolidationPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Principles of Consolidation</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The consolidated financial statements include those of the Company and its subsidiaries. &#160;All intercompany accounts and transactions have been eliminated in consolidation. </p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:CashAndCashEquivalentsPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Cash and Cash Equivalents</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>For purposes of the consolidated statement of cash flows, the Company considers cash on deposit and short-term investments with original maturities of three months or less to be cash and cash equivalents.</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:ConcentrationRiskDisclosureTextBlock' contextRef='Y21' escape='true' continuedAt='c2'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Concentration of Credit Risk</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The primary concentration of credit risk consists of trade receivables. &#160;In the normal course of business, the Company provides credit terms to its customers. &#160;Accordingly, the Company performs ongoing credit evaluations of its customers and maintains allowances for possible losses which, when realized, have been within the range of management's expectations as reflected by its reserves. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company's customer base consists of hospitals, medical device distributors, physician practices and others directly related to healthcare providers, as well as other manufacturing companies. Although the Company is affected by the well-being of the global healthcare industry, management does not believe significant trade receivable credit risk exists at December&#160;31, 2021 except under an extreme global financial crisis.</p>
</ix:nonNumeric></ix:nonNumeric><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>43</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><ix:continuation id='c1' continuedAt='c3'><ix:continuation id='c2'><p style='font:10pt Times New Roman;margin:0'>The Company maintains its cash in bank deposit accounts in addition to Fidelity Investment money market accounts. &#160;The Company has not experienced any losses in such accounts and believes it is not exposed to a significant credit risk on cash and cash equivalent balances. </p>
</ix:continuation><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:ReceivablesPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Accounts Receivable</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Accounts receivable are amounts due on product sales and are unsecured. &#160;Accounts receivable are carried at their estimated collectible amounts. &#160;Credit is generally extended on a short-term basis; thus, accounts receivable do not bear interest although a late charge may be applied to such receivables that are past the due date. &#160;Accounts receivable are periodically evaluated for collectability based on past credit history of customers and current market conditions. &#160;Provisions for losses on accounts receivable are determined on the basis of loss experience, known and inherent risk in the account balance and current economic conditions (see note 2).</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:InventoryPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Inventories</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Finished products, work-in-process, raw materials and supplies inventories are stated at the lower of cost and net realizable value (NRV) computed on a first-in, first-out method. &#160;Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable costs of completion, disposal, and transportation (see note 2). </p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:PropertyPlantAndEquipmentPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Property and Equipment</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Property and equipment are stated at cost. &#160;Depreciation and amortization are computed using the straight-line method over estimated useful lives as follows:</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td colspan='2' valign='top' style='width:391.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:298.8pt'><p style='font:10pt Times New Roman;margin:0'>Building and improvements</p>
</td><td valign='middle' style='width:92.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='us-gaap:PropertyPlantAndEquipmentUsefulLife' contextRef='Y21_Range-Minimum_PpeByType-BuildingAndBuildingImprovements' format='ixt-sec:duryear'>15</ix:nonNumeric> - <ix:nonNumeric name='us-gaap:PropertyPlantAndEquipmentUsefulLife' contextRef='Y21_Range-Maximum_PpeByType-BuildingAndBuildingImprovements' format='ixt-sec:duryear'>40</ix:nonNumeric> years</p>
</td></tr>
<tr><td valign='top' style='width:298.8pt'><p style='font:10pt Times New Roman;margin:0'>Furniture, equipment and tooling</p>
</td><td valign='middle' style='width:92.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='us-gaap:PropertyPlantAndEquipmentUsefulLife' contextRef='Y21_Range-Minimum_PpeByType-Equipment' format='ixt-sec:duryear'>3</ix:nonNumeric> - <ix:nonNumeric name='us-gaap:PropertyPlantAndEquipmentUsefulLife' contextRef='Y21_Range-Maximum_PpeByType-Equipment' format='ixt-sec:duryear'>10</ix:nonNumeric> years</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Long-Lived Assets</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company evaluates its long-lived assets in accordance with Accounting Standards Codification (ASC) 360, &#8220;Accounting for the Impairment of Long-Lived Assets.&#8221; &#160;Long-lived assets held and used by the Company are reviewed for impairment whenever events or changes in circumstances indicate that their net book value may not be recoverable. &#160;When such factors and circumstances exist, the Company compares the projected undiscounted future cash flows associated with the related asset or group of assets over their estimated useful lives against their respective carrying amounts. &#160;Impairment, if any, is based on the excess of the carrying amount over the fair value of those assets and is recorded in the period in which the determination was made. </p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Intangible Assets</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Costs associated with the acquisition of patents, trademarks, trade names, customer relationships, regulatory approvals &amp; product certifications, license rights and non-compete agreements are capitalized, and are being amortized using the straight-line method over periods ranging from <ix:nonNumeric name='us-gaap:FiniteLivedIntangibleAssetUsefulLife' contextRef='Y21_Range-Minimum' format='ixt-sec:duryear'>5</ix:nonNumeric> to <ix:nonNumeric name='us-gaap:FiniteLivedIntangibleAssetUsefulLife' contextRef='Y21_Range-Maximum' format='ixt-sec:duryear'>20</ix:nonNumeric> years. UTMD&#8217;s goodwill is tested for impairment annually, in the fourth quarter of each year, in accordance with ASC 350. UTMD also performs impairment tests contemporaneously, if circumstances change that would more than likely reduce the fair value of goodwill below its net book value. &#160;If UTMD determines that its goodwill is impaired, a second step is completed to measure the amount of the impairment loss. UTMD does not expect its goodwill to become impaired in the foreseeable future. &#160;Estimated future amortization expenses on intangible assets held as of December 31, 2021, using the 2021 year-end <ix:nonFraction name='fil:ForeignCurrencyExchangeRateTranslationGBPtoUSD' contextRef='E21' unitRef='Pure' decimals='INF' scale='0' format='ixt:numdotdecimal'>1.3536</ix:nonFraction> USD/GBP and<ix:nonFraction name='fil:ForeignCurrencyExchangeRateTranslationAUDtoUSD' contextRef='E21' unitRef='Pure' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.7268</ix:nonFraction> USD/AUD currency exchange rates, is about $<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,542</ix:nonFraction> in 2022, $<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>5,805</ix:nonFraction> in 2023, $<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,121</ix:nonFraction> in 2024, $<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,121</ix:nonFraction> in 2025, and $<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>463</ix:nonFraction> in 2026 (see note 2).</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>In 2019, $<ix:nonFraction name='us-gaap:FinitelivedIntangibleAssetsAcquired1' contextRef='Y19Q1_DistributionRightsAcquisition-CoopersurgicalInc' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>21,000</ix:nonFraction> in intangible assets were acquired from CSI. &#160;The future amortization expenses on those assets are estimated to be $<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths' contextRef='E21_DistributionRightsAcquisition-CoopersurgicalInc' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,421</ix:nonFraction> per year in 2022, and $<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo' contextRef='E21_DistributionRightsAcquisition-CoopersurgicalInc' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,684</ix:nonFraction> in 2023 (see note 15).</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</ix:continuation><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>44</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><ix:continuation id='c3'> <ix:nonNumeric name='us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Stock-Based Compensation </span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>At December 31, 2021, the Company has stock-based employee compensation plans, which are described more fully in note 8. &#160;The Company accounts for stock compensation under ASC 718, <i>Share-Based Payment</i>. &#160;This statement requires the Company to recognize compensation cost based on the grant date fair value of options granted to employees and directors. In 2021, the Company recognized $<ix:nonFraction name='us-gaap:AllocatedShareBasedCompensationExpense' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>166</ix:nonFraction> in stock-based compensation cost compared to $<ix:nonFraction name='us-gaap:AllocatedShareBasedCompensationExpense' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>160</ix:nonFraction> in 2020 and $<ix:nonFraction name='us-gaap:AllocatedShareBasedCompensationExpense' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>113</ix:nonFraction> in 2019.</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:RevenueRecognitionPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Revenue Recognition</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company recognizes revenue at the time of product shipment as UTMD meets its contractual performance obligations to the customer at the time of shipment. Revenue recognized by UTMD is based upon the consideration to which UTMD is entitled from its customers as a result of shipping a physical product, in accordance with the documented arrangements and fixed contracts in which the selling price was fixed prior to the Company&#8217;s acceptance of an order. Revenue from service sales, which are immaterial to UTMD, is generally recognized when the service is completed and invoiced. As demonstrated by decades of experience in successful and consistent collections, there is very minor and insignificant uncertainty regarding the collectability of invoiced amounts reasonably within the terms of the Company&#8217;s contracts. There are circumstances under which insignificant revenue may be recognized when product is not shipped, which meet the criteria of ASC 606: the Company provides engineering services, for example, design and production of manufacturing tooling that may be used in subsequent UTMD manufacturing of custom components for other companies. &#160;This revenue is recognized when UTMD&#8217;s performance obligations have been completed according to a fixed contractual agreement. &#160;UTMD includes handling fees charged to customers in revenues. </p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'> &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:IncomeTaxPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Income Taxes</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company accounts for income taxes under ASC 740, &#8220;Accounting for Income Taxes,&#8221; whereby deferred taxes are computed under the asset and liability method. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company accounts for deferred taxes under ASC 740, &#8220;Accounting for Income Taxes,&#8221; which requires that all deferred income taxes are classified as noncurrent in a classified statement of financial position.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The TCJA contains a deemed repatriation transition tax (REPAT tax) on accumulated earnings and profits of the Company&#8217;s non-U.S. subsidiaries that have not been subject to U.S. tax. &#160;The Company has elected to pay its net REPAT tax over eight years. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company or one of its subsidiaries files income tax returns in the U.S. federal jurisdiction, in Utah, in the United Kingdom, in Australia, in Ireland and in Canada. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company recognizes interest accrued related to unrecognized tax benefits in interest expense and any related penalties in income taxes. The Company did not recognize any tax-related interest expense or have any tax penalties in 2019 or 2021. &#160;In 2020 the Company paid tax penalties of $<ix:nonFraction name='us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4</ix:nonFraction>. </p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:LegalCostsPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Legal Costs</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company has been involved in lawsuits which are an expected consequence of its operations and in the ordinary course of business. &#160;The Company maintains a reserve for legal costs which are probable and estimated based on previous experience and known risk. &#160;The reserve for legal costs at December 31, 2021 and 2020 was  $<ix:nonFraction name='us-gaap:LitigationReserve' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>96</ix:nonFraction> and $<ix:nonFraction name='us-gaap:LitigationReserve' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>113</ix:nonFraction>, respectively (see note 2).</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:EarningsPerSharePolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Earnings per Share</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The computation of basic earnings per common share is based on the weighted average number of shares outstanding during each year. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The computation of earnings per common share assuming dilution is based on the weighted average number of shares outstanding during the year plus the weighted average common stock equivalents which would arise from the exercise of stock options outstanding using the treasury stock method and the average market price per share during the year.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt'>The shares (in thousands) used in the computation of the Company&#8217;s basic and diluted earnings per share are reconciled as follows:</p>
<ix:nonNumeric name='us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:960.75pt'></td><td valign='top' style='width:104.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:69.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:104.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:69.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:104.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:960.75pt'><p style='font:10pt Times New Roman;margin:0'> Weighted average number of shares outstanding &#8211;&#160;basic</p>
</td><td valign='top' style='background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfSharesOutstandingBasic' contextRef='Y21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,647</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:69.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfSharesOutstandingBasic' contextRef='Y20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,658</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:69.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfSharesOutstandingBasic' contextRef='Y19' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,721</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:960.75pt'><p style='font:10pt Times New Roman;margin:0'> Dilutive effect of stock options</p>
</td><td valign='top' style='width:104.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment' contextRef='Y21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>13</ix:nonFraction></p>
</td><td valign='top' style='width:69.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:104.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment' contextRef='Y20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>14</ix:nonFraction></p>
</td><td valign='top' style='width:69.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:104.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment' contextRef='Y19' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>18</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:960.75pt'><p style='font:10pt Times New Roman;margin:0'> Weighted average number of shares outstanding, assuming dilution</p>
</td><td valign='top' style='background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding' contextRef='Y21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,660</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:69.45pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding' contextRef='Y20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,672</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:69.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding' contextRef='Y19' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,739</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric></ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='fil:PresentationOfSalesAndSimilarTaxesTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Presentation of Sales and Similar Taxes</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Sales tax on revenue-producing transactions is recorded as a liability when the sale occurs. &#160;UTMD is not required to withhold sales tax on OUS sales, and at least 90% of domestic 2021 sales were to customers who are tax exempt or who are in jurisdictions where UTMD is not required to withhold sales tax.</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'> &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Translation of Foreign Currencies</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Assets and liabilities of the Company&#8217;s foreign subsidiaries are translated into U.S. dollars at the applicable exchange rates at year-end. &#160;Net gains or losses resulting from the translation of the Company&#8217;s assets and liabilities are reflected as a separate component of stockholders&#8217; equity. &#160;A negative translation impact on stockholders&#8217; equity reflects a current relative U.S. Dollar value higher than at the point in time that assets were actually acquired in a foreign currency. &#160;A positive translation impact would result from a U.S. dollar weaker in value than at the point in time foreign assets were acquired. &#160;Year-end translation gains or losses of non-functional currency bank account balances, e.g. EUR and AUD balances held by the UK subsidiary, are recognized as non-operating income or expense, as applicable.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Income and expense items are translated at the weighted average rate of exchange (based on when transactions actually occurred) during the year. </p>
</ix:nonNumeric></ix:continuation><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>45</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><ix:nonNumeric name='us-gaap:SupplementalBalanceSheetDisclosuresTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 2 &#8211;&#160;Detail of Certain Balance Sheet Accounts</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='4' valign='bottom' style='width:343.95pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>December 31,</p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'></td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:113.15pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'>Accounts and other receivables:</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Accounts receivable&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccountsReceivableGrossCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>5,287</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccountsReceivableGrossCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,224</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Accrued interest and other&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InterestReceivableAndOtherAssets' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>39</ix:nonFraction></p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InterestReceivableAndOtherAssets' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Less allowance for doubtful accounts&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>156</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>134</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:46.8pt'></kbd>Total accounts and other receivables&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccountsAndOtherReceivablesNetCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>5,170</ix:nonFraction></p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccountsAndOtherReceivablesNetCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,104</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric> <ix:nonNumeric name='us-gaap:ScheduleOfInventoryCurrentTableTextBlock' contextRef='Y21' escape='true'><p style='font:11pt Times New Roman;margin:0'></p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'>Inventories:</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>.</p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'></td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Finished products&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryFinishedGoodsNetOfReserves' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,468</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryFinishedGoodsNetOfReserves' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,363</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Work-in-process&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryWorkInProcess' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,398</ix:nonFraction></p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryWorkInProcess' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,375</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Raw materials&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryRawMaterials' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,730</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryRawMaterials' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,484</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:46.8pt'></kbd>Total inventories&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryNet' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,596</ix:nonFraction></p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:InventoryNet' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,222</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric><ix:nonNumeric name='us-gaap:ScheduleOfGoodwillTextBlock' contextRef='Y21' escape='true'><table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'>Goodwill:</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'></td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'></td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'>Balance as of January 1</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Goodwill' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,164</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Goodwill' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>13,961</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Effect of foreign exchange&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:GoodwillForeignCurrencyTranslationGainLoss' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>66</ix:nonFraction>)</p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GoodwillForeignCurrencyTranslationGainLoss' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>203</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Subtractions as a result of impairment&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GoodwillImpairmentLoss' contextRef='Y21' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GoodwillImpairmentLoss' contextRef='Y20' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:46.8pt'></kbd>Total Goodwill as of December 31&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Goodwill' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,098</ix:nonFraction></p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Goodwill' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,164</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric><ix:nonNumeric name='us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock' contextRef='Y21' escape='true'><p style='font:11pt Times New Roman;margin:0'></p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'>Other identifiable intangible assets:</p>
</td><td valign='top' style='width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt'></td><td valign='top' style='width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt'></td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Patents&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedPatentsGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,212</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedPatentsGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,201</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Non-compete agreements&#160;</p>
</td><td valign='top' style='width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedNoncompeteAgreementsGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>135</ix:nonFraction></p>
</td><td valign='top' style='width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedNoncompeteAgreementsGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>137</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Trademarks &amp; trade names&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedTrademarksGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,930</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedTrademarksGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,021</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Customer relationships&#160;</p>
</td><td valign='top' style='width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedCustomerRelationshipsGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,678</ix:nonFraction></p>
</td><td valign='top' style='width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedCustomerRelationshipsGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,769</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd> Distribution agreements&#160;</p>
</td><td valign='top' style='width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherFiniteLivedIntangibleAssetsGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>21,000</ix:nonFraction></p>
</td><td valign='top' style='width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherFiniteLivedIntangibleAssetsGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>21,000</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Regulatory approvals &amp; product certifications&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>12,910</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>13,031</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:46.8pt'></kbd>Total Other Identifiable Intangible Assets&#160;</p>
</td><td valign='top' style='width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>55,865</ix:nonFraction></p>
</td><td valign='top' style='width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.05pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>56,159</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Accumulated amortization&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>38,552</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>32,166</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='width:1041.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:46.8pt'></kbd> Other Identifiable Intangible Assets, Net&#160;</p>
</td><td valign='top' style='width:26.9pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsNet' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>17,313</ix:nonFraction></p>
</td><td valign='top' style='width:113.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.85pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:FiniteLivedIntangibleAssetsNet' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>23,993</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric> <ix:nonNumeric name='us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock' contextRef='Y21' escape='true'><p style='font:11pt Times New Roman;margin:0'></p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'>Accrued expenses:</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'></td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'></td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Income taxes payable&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccruedIncomeTaxesCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>36</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccruedIncomeTaxesCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Payroll and payroll taxes&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EmployeeRelatedLiabilitiesCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,225</ix:nonFraction></p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EmployeeRelatedLiabilitiesCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>946</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Reserve for litigation costs&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:LitigationReserveCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>96</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:LitigationReserveCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>113</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Other&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherAccruedLiabilitiesCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,627</ix:nonFraction></p>
</td><td valign='top' style='width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OtherAccruedLiabilitiesCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,941</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:1041.1pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:46.8pt'></kbd>Total accrued expenses&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccruedLiabilitiesCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,984</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.15pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:AccruedLiabilitiesCurrent' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,003</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric></ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:QuarterlyFinancialInformationTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 3 &#8211;&#160;Quarterly Results of Operations (Unaudited)</span></p>
<ix:nonNumeric name='us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='10' valign='bottom' style='width:832.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Unaudited Quarterly Data for 2021</p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'></td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>First Quarter</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Second Quarter</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Third Quarter</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Fourth Quarter</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Net Sales</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21Q1' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,964</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21Q2' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>12,604</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21Q3' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>12,572</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21Q4' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>12,914</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Gross Profit</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y21Q1' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,947</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y21Q2' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7,785</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y21Q3' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,073</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y21Q4' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,112</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Net Income</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21Q1' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,024</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21Q2' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,426</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21Q3' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,206</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21Q4' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,131</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Earnings Per Common Share (Diluted)</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y21Q1' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.83</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y21Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.94</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y21Q3' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>1.15</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y21Q4' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>1.13</ix:nonFraction></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='10' valign='bottom' style='width:832.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Unaudited Quarterly Data for 2020</p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'></td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>First Quarter</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Second Quarter</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Third Quarter</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Fourth Quarter</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Net Sales</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20Q1' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,902</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20Q2' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,787</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20Q3' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,479</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20Q4' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>12,010</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Gross Profit</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y20Q1' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,836</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y20Q2' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,950</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y20Q3' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,497</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y20Q4' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7,265</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Net Income</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20Q1' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,140</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20Q2' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,313</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20Q3' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,933</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20Q4' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,412</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Earnings Per Common Share (Diluted)</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y20Q1' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.84</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y20Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.36</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y20Q3' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.80</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y20Q4' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.94</ix:nonFraction></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='10' valign='bottom' style='width:832.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Unaudited Quarterly Data for 2019</p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'></td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>First Quarter</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Second Quarter</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Third Quarter</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Fourth Quarter</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Net Sales</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19Q1' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,732</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19Q2' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,846</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19Q3' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>12,494</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19Q4' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,831</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Gross Profit</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y19Q1' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,773</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y19Q2' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7,500</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y19Q3' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7,379</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:GrossProfit' contextRef='Y19Q4' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7,814</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Net Income</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19Q1' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,139</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19Q2' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,525</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19Q3' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,705</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19Q4' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,359</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Earnings Per Common Share (Diluted)</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y19Q1' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.84</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y19Q2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.94</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y19Q3' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.99</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y19Q4' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>1.17</ix:nonFraction></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;color:#000000'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'></p>
</ix:nonNumeric></ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
 <ix:nonNumeric name='us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 4 &#8211;&#160;Property and Equipment</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Property and equipment consists of the following:</p>
<ix:nonNumeric name='us-gaap:PropertyPlantAndEquipmentTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:406.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='4' valign='bottom' style='width:241.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>December 31,</p>
</td></tr>
<tr><td valign='top' style='width:406.95pt'></td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:97.3pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:1.95pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:42.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:99.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:406.95pt'><p style='font:10pt Times New Roman;margin:0'>Land</p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:97.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,690</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:1.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:99.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,725</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:406.95pt'><p style='font:10pt Times New Roman;margin:0'>Buildings and improvements</p>
</td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:97.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,172</ix:nonFraction></p>
</td><td valign='top' style='width:1.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:99.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,531</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:406.95pt'><p style='font:10pt Times New Roman;margin:0'>Furniture, equipment and tooling</p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:97.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16,660</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:1.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:99.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16,750</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:406.95pt'><p style='font:10pt Times New Roman;margin:0'> <span style='-sec-ix-hidden:fact5'><span style='-sec-ix-hidden:fact6'>Right-of-Use</span></span> Asset</p>
</td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:97.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>449</ix:nonFraction></p>
</td><td valign='top' style='width:1.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:99.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>377</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:406.95pt'><p style='font:10pt Times New Roman;margin:0'>Construction-in-progress</p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:97.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>898</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:1.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:99.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>527</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:406.95pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Total&#160;</p>
</td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:97.3pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>33,869</ix:nonFraction></p>
</td><td valign='top' style='width:1.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:99.05pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>33,910</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:406.95pt'><p style='font:10pt Times New Roman;margin:0'>Accumulated depreciation</p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:97.3pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>22,802</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:1.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:99.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>22,584</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='width:406.95pt'><p style='font:10pt Times New Roman;margin:0'>Property and equipment, net</p>
</td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:97.3pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,067</ix:nonFraction></p>
</td><td valign='top' style='width:1.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:42.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:99.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,326</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Included in the Company&#8217;s consolidated balance sheet are the assets of its manufacturing and administrative facilities in Utah, Canada, England, Australia and Ireland. &#160;Property and equipment, by geographic area, are as follows:</p>
<ix:nonNumeric name='fil:PropertyPlantAndEquipmentByLocationTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='10' valign='bottom' style='width:832.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Dutch801SWC;margin:0;text-align:center'><span style='font-family:Times New Roman'>December 31, 2021</span></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'></td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>U.S. &amp; Canada</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>England &amp; Australia </p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Ireland</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Total</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Land</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E21_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>621</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E21_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>678</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E21_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>391</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,690</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Buildings and improvements</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E21_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,541</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E21_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,384</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E21_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,247</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,172</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Furniture, equipment and tooling</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E21_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,608</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E21_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>752</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E21_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,300</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16,660</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Right-of-Use Asset</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E21_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>411</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E21_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E21_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>38</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>449</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Construction-in-progress</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E21_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>412</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E21_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E21_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>484</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>898</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Total&#160;</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E21_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>22,593</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E21_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,816</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E21_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,460</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>33,869</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Accumulated depreciation</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E21_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>18,168</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E21_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,164</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E21_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,470</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>22,802</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='width:520.2pt'><p style='font:10pt Times New Roman;margin:0'>Property and equipment, net</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E21_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,425</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E21_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,652</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E21_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,990</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:148.65pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,067</ix:nonFraction></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:520.25pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='10' valign='bottom' style='width:832.3pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Dutch801SWC;margin:0;text-align:center'><span style='font-family:Times New Roman'>December 31, 2020</span></p>
</td></tr>
<tr><td valign='top' style='width:520.25pt'></td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>U.S. &amp; Canada</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>England &amp; Australia </p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Ireland</p>
</td><td valign='bottom' style='width:49.55pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:29.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Total</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.25pt'><p style='font:10pt Times New Roman;margin:0'>Land</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E20_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>621</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E20_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>684</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E20_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>420</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:Land' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,725</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.25pt'><p style='font:10pt Times New Roman;margin:0'>Buildings and improvements</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E20_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,523</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E20_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,443</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E20_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,565</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:BuildingsAndImprovementsGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,531</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.25pt'><p style='font:10pt Times New Roman;margin:0'>Furniture, equipment and tooling</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E20_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,632</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E20_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>761</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E20_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,357</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:MachineryAndEquipmentGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16,750</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.25pt'><p style='font:10pt Times New Roman;margin:0'>Right-of-Use Asset</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E20_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>361</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E20_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E20_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>377</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.25pt'><p style='font:10pt Times New Roman;margin:0'>Construction-in-progress</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E20_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>36</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E20_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E20_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>491</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ConstructionInProgressGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>527</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:520.25pt'><p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:19.8pt'></kbd>Total&#160;</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E20_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>22,173</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E20_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,888</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E20_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,849</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentGross' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>33,910</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:520.25pt'><p style='font:10pt Times New Roman;margin:0'>Accumulated depreciation</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E20_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>17,934</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E20_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>974</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E20_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,676</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>22,584</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='width:520.25pt'><p style='font:10pt Times New Roman;margin:0'>Property and equipment, net</p>
</td><td valign='top' style='width:29.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:30.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E20_StGeo-U.S.AndCanada' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,239</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E20_StGeo-EnglandAndAustralia' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,914</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E20_StGeo-IE' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,173</ix:nonFraction></p>
</td><td valign='top' style='width:49.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:29.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:PropertyPlantAndEquipmentNet' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,326</ix:nonFraction></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</ix:nonNumeric><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>46</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/> <ix:nonNumeric name='us-gaap:LongTermDebtTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 5 &#8211;&#160;Long-term Debt</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><ix:nonFraction name='us-gaap:LongTermDebt' contextRef='E21' unitRef='USD' decimals='INF' format='ixt-sec:numwordsen'><ix:nonFraction name='us-gaap:LongTermDebt' contextRef='E20' unitRef='USD' decimals='INF' format='ixt-sec:numwordsen'>None</ix:nonFraction></ix:nonFraction> in 2020 and 2021.</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt'>&#160;</p>
<ix:nonNumeric name='us-gaap:CommitmentsAndContingenciesDisclosureTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt'><span style='border-bottom:1px solid #000000'>Note 6 &#8211;&#160;Commitments and Contingencies</span></p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Purchase Obligations</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company has obligations to purchase raw materials for use in its manufacturing operations. &#160;The Company has the right to make changes in, among other things, purchase quantities, delivery schedules and order acceptance.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Product Liability</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company is self-insured for product liability risk. &#8220;Product liability&#8221; is an insurance industry term for the cost of legal defense and possible damages awarded as a result of use of a company&#8217;s product during a procedure which results in an injury of a patient. &#160;The Company maintains a reserve for product liability litigation and damages consistent with its previous long-term experience. &#160;Actual product liability litigation costs and damages during the last three reporting years have been immaterial, which is consistent with the Company&#8217;s overall history. &#160;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company absorbs the costs of clinical training and trouble-shooting in its on-going operating expenses.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Warranty Reserve</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company&#8217;s published warranty is: &#8220;UTMD warrants its products to conform in all material respects to all published product specifications in effect on the date of shipment, and to be free from defects in material and workmanship for a period of thirty (30) days for supplies, or twenty-four (24) months for equipment, from date of shipment. &#160;During the warranty period UTMD shall, at its option, replace any products shown to UTMD's reasonable satisfaction to be defective at no expense to the Purchaser or refund the purchase price.&#8221; </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>UTMD maintains a warranty reserve to provide for estimated costs which are likely to occur. The amount of this reserve is adjusted, as required, to reflect its actual experience. Based on its analysis of historical warranty claims and its estimate that existing warranty obligations are immaterial, <ix:nonFraction name='us-gaap:ProductWarrantyAccrual' contextRef='E21' unitRef='USD' decimals='INF' format='ixt-sec:numwordsen'><ix:nonFraction name='us-gaap:ProductWarrantyAccrual' contextRef='E20' unitRef='USD' decimals='INF' format='ixt-sec:numwordsen'>no</ix:nonFraction></ix:nonFraction> warranty reserve was made at December 31, 2021 or December 31, 2020. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Litigation</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company has been involved in lawsuits which are an expected consequence of its operations and in the ordinary course of business. &#160;Presently, there is no litigation or threatened litigation for which the Company believes the outcome may be material to its financial results. &#160;The Company applies its accounting policy to accrue legal costs that can be reasonably estimated. </p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'> &#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>47</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><ix:nonNumeric name='us-gaap:IncomeTaxDisclosureTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 7 &#8211;&#160;Income Taxes &#160;</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Deferred tax assets (liabilities) consist of the following temporary differences:</p>
<ix:nonNumeric name='us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:99.98%'><tr><td valign='top' style='width:795.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='7' valign='middle' style='width:588.95pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>December 31,</p>
</td></tr>
<tr><td valign='top' style='width:795.65pt'></td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:113.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:113.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:27.35pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.65pt'><p style='font:10pt Times New Roman;margin:0'>Inventory write-downs and differences due to UNICAP</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxAssetsInventory' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>88</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxAssetsInventory' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>86</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxAssetsInventory' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>84</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:795.65pt'><p style='font:10pt Times New Roman;margin:0'>Allowance for doubtful accounts</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>31</ix:nonFraction></p>
</td><td valign='top' style='width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>32</ix:nonFraction></p>
</td><td valign='top' style='width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>33</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.65pt'><p style='font:10pt Times New Roman;margin:0'>Accrued liabilities and reserves</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>58</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>68</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>55</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:795.65pt'><p style='font:10pt Times New Roman;margin:0'>Depreciation and amortization</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.25pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='fil:DeferredTaxLiabilitiesDepreciationAndAmortization' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,925</ix:nonFraction>)</p>
</td><td valign='top' style='width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.25pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='fil:DeferredTaxLiabilitiesDepreciationAndAmortization' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,034</ix:nonFraction>)</p>
</td><td valign='top' style='width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.25pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='fil:DeferredTaxLiabilitiesDepreciationAndAmortization' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,933</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.65pt'><p style='font:10pt Times New Roman;margin:0'>Deferred income taxes, net</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:DeferredTaxLiabilities' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,748</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:DeferredTaxLiabilities' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,848</ix:nonFraction>)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:DeferredTaxLiabilities' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,761</ix:nonFraction>)</p>
</td></tr>
</table>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The components of income tax expense are as follows:</p>
<ix:nonNumeric name='us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='7' valign='top' style='width:589.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Years ended December 31,</p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'></td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Current</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CurrentIncomeTaxExpenseBenefit' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,983</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CurrentIncomeTaxExpenseBenefit' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,253</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:CurrentIncomeTaxExpenseBenefit' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,467</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Deferred</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:DeferredIncomeTaxExpense' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>290</ix:nonFraction></p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='fil:DeferredIncomeTaxExpense' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>211</ix:nonFraction>)</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='fil:DeferredIncomeTaxExpense' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>310</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Total</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxExpenseBenefit' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,273</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxExpenseBenefit' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,042</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxExpenseBenefit' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,157</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Income tax expense differed from amounts computed by applying the statutory federal rate to pretax income as follows:</p>
<ix:nonNumeric name='us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='7' valign='top' style='width:589.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Years ended December 31,</p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'></td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Federal income tax expense at the statutory rate</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,520</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,915</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,512</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>State income taxes</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>448</ix:nonFraction></p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>369</ix:nonFraction></p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>124</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Foreign income taxes (blended rate)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,010</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>550</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>985</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>ETI, manufacturing deduction and tax credits</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6</ix:nonFraction>)</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7</ix:nonFraction>)</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Deemed repatriation transition tax </p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' contextRef='Y21' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0;color:#FF0000;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>263</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' contextRef='Y19' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>266</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>US Taxes on foreign income</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='fil:TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>99</ix:nonFraction>)</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='fil:TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>35</ix:nonFraction>)</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>59</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Change in Rate</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:AdjustmentToDeferredTaxLiability' contextRef='Y21' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>391</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:AdjustmentToDeferredTaxLiability' contextRef='Y20' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:AdjustmentToDeferredTaxLiability' contextRef='Y19' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Other</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationOtherAdjustments' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9</ix:nonFraction></p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:IncomeTaxReconciliationOtherAdjustments' contextRef='Y20' sign='-' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>13</ix:nonFraction>)</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxReconciliationOtherAdjustments' contextRef='Y19' unitRef='USD' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Total</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxExpenseBenefit' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,273</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxExpenseBenefit' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,042</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeTaxExpenseBenefit' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,157</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The domestic and foreign components of income before income tax expense were as follows: &#160;</p>
<ix:nonNumeric name='us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='7' valign='top' style='width:589.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Years ended December 31,</p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'></td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Domestic</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>12,004</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,031</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,549</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Foreign</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7,057</ix:nonFraction></p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,809</ix:nonFraction></p>
</td><td valign='top' style='width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:102.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,335</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Total</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>19,061</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>13,840</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:113.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>17,884</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric></ix:nonNumeric><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>48</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><ix:nonNumeric name='us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock' contextRef='Y21' escape='true' continuedAt='c4'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 8 &#8211;&#160;Options</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company has stock option plans which authorize the grant of stock options to eligible employees, directors and other individuals to purchase up to an aggregate of &#160;<ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized' contextRef='E21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>461</ix:nonFraction> thousand shares of common stock, of which <ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' contextRef='E21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>52</ix:nonFraction> thousand are outstanding as of December 31, 2020. &#160;All options granted under the plans are granted at current market value at the date of grant, and may be exercised between six months and ten years following the date of grant. &#160;The plans are intended to advance the interest of the Company by attracting and ensuring retention of competent directors, employees and executive personnel, and to provide incentives to those individuals to devote their utmost efforts to the advancement of stockholder value. &#160;Changes in stock options were as follows:</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'></p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:114.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Shares<br/>(000&#8217;s)</p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:27pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='2' valign='top' style='width:346.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Price Range <br/>Per Share</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'><b>2021</b></p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='2' valign='top' style='background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Granted</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' contextRef='Y21' unitRef='Shares' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='2' valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareGranted' contextRef='Y21' escape='true'>- - -</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Expired or canceled</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' contextRef='Y21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='2' valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareExpired' contextRef='Y21' escape='true'>74.64 - 77.05</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Exercised</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised' contextRef='Y21_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>14</ix:nonFraction></p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='2' valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareExercised' contextRef='Y21' escape='true'>26.52 - 77.05</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Total outstanding at December 31</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' contextRef='E21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>52</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='2' valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareOutstanding' contextRef='Y21' escape='true'>33.30 - 77.05</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='width:795.9pt'><p style='font:10pt Times New Roman;margin:0'>Total exercisable at December 31</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' contextRef='E21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>34</ix:nonFraction></p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='2' valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareTotalExercisable' contextRef='Y21' escape='true'>33.30 - 77.05</ix:nonNumeric></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:795.95pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:114.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Shares<br/>(000&#8217;s)</p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:27pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:346pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Price Range <br/>Per Share</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.95pt'><p style='font:10pt Times New Roman;margin:0'><b>2020</b></p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:795.95pt'><p style='font:10pt Times New Roman;margin:0'>Granted</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' contextRef='Y20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>26</ix:nonFraction></p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareGranted' contextRef='Y20' escape='true'>77.05 - 77.05</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.95pt'><p style='font:10pt Times New Roman;margin:0'>Expired or canceled</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' contextRef='Y20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>1</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareExpired' contextRef='Y20' escape='true'>58.50 - 77.05</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='width:795.95pt'><p style='font:10pt Times New Roman;margin:0'>Exercised</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised' contextRef='Y20_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>8</ix:nonFraction></p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareExercised' contextRef='Y20' escape='true'>26.52 - 74.64</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.95pt'><p style='font:10pt Times New Roman;margin:0'>Total outstanding at December 31</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' contextRef='E20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>69</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareOutstanding' contextRef='Y20' escape='true'>26.52 - 77.05</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='width:795.95pt'><p style='font:10pt Times New Roman;margin:0'>Total exercisable at December 31</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' contextRef='E20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>33</ix:nonFraction></p>
</td><td valign='top' style='width:101.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:345.7pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareTotalExercisable' contextRef='Y20' escape='true'>26.52 - 74.64</ix:nonNumeric></p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:795.7pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.45pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Shares<br/>(000&#8217;s)</p>
</td><td valign='top' style='width:101.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:346.3pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Price Range <br/>Per Share</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.7pt'><p style='font:10pt Times New Roman;margin:0'><b>2019</b></p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:114.45pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:346.3pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:795.7pt'><p style='font:10pt Times New Roman;margin:0'>Granted</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' contextRef='Y19' unitRef='Shares' decimals='-3' format='ixt:zerodash'>-</ix:nonFraction></p>
</td><td valign='top' style='width:101.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:346.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareGranted' contextRef='Y19' escape='true'>- - -</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.7pt'><p style='font:10pt Times New Roman;margin:0'>Expired or canceled</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:114.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' contextRef='Y19' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>2</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:346.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareExpired' contextRef='Y19' escape='true'>58.50 - 74.64</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='width:795.7pt'><p style='font:10pt Times New Roman;margin:0'>Exercised</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised' contextRef='Y19_StEqComps-CommonStock' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>7</ix:nonFraction></p>
</td><td valign='top' style='width:101.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:346.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareExercised' contextRef='Y19' escape='true'>24.00 - 58.50</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:795.7pt'><p style='font:10pt Times New Roman;margin:0'>Total outstanding at December 31</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:114.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' contextRef='E19' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>52</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:346.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareOutstanding' contextRef='Y19' escape='true'>26.52 - 74.64</ix:nonNumeric></p>
</td></tr>
<tr><td valign='top' style='width:795.7pt'><p style='font:10pt Times New Roman;margin:0'>Total exercisable at December 31</p>
</td><td valign='top' style='width:27.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:114.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' contextRef='E19' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>33</ix:nonFraction></p>
</td><td valign='top' style='width:101.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:27.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:346.3pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><ix:nonNumeric name='fil:PriceRangePerShareTotalExercisable' contextRef='Y19' escape='true'>26.52 - 74.64</ix:nonNumeric></p>
</td></tr>
</table>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>For the years ended December&#160;31, 2021, 2020 and 2019, the Company reduced current income taxes payable by $<ix:nonFraction name='us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>39</ix:nonFraction>, $<ix:nonFraction name='us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7</ix:nonFraction> and $<ix:nonFraction name='us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>23</ix:nonFraction>, respectively, for the income tax benefit attributable to sale by optionees of common stock received upon the exercise of stock options.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Stock-Based Compensation</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>In 2021, the Company recognized $<ix:nonFraction name='us-gaap:AllocatedShareBasedCompensationExpense' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>166</ix:nonFraction> in equity compensation cost, compared to $<ix:nonFraction name='us-gaap:AllocatedShareBasedCompensationExpense' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>160</ix:nonFraction> in 2020 and $<ix:nonFraction name='us-gaap:AllocatedShareBasedCompensationExpense' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>113</ix:nonFraction> in 2019. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The fair value of each option grant is estimated on the date of grant using the Black-Scholes option pricing model with the following weighted average assumptions:</p>
<ix:nonNumeric name='us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:775.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='7' valign='top' style='width:610.3pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Years ended December 31,</p>
</td></tr>
<tr><td valign='top' style='width:775.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:139.5pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:70.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:124pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:86.5pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:136.15pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:775.35pt'><p style='font:10pt Times New Roman;margin:0'>Expected dividend amount per quarter</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:139.5pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>-</p>
</td><td valign='top' style='background-color:#CCEEFF;width:70.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:124pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments' contextRef='Y20' unitRef='USD' decimals='INF' scale='0' format='ixt:numdotdecimal'>0.2943</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:86.5pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>-</p>
</td></tr>
<tr><td valign='top' style='width:775.35pt'><p style='font:10pt Times New Roman;margin:0'>Expected stock price volatility</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:139.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>-</p>
</td><td valign='top' style='width:70.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:124pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate' contextRef='Y20' unitRef='Pure' decimals='INF' scale='-2' format='ixt:numdotdecimal'>27.5</ix:nonFraction>%</p>
</td><td valign='top' style='width:86.5pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:136.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>-</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:775.35pt'><p style='font:10pt Times New Roman;margin:0'>Risk-free interest rate</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:139.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>-</p>
</td><td valign='top' style='background-color:#CCEEFF;width:70.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:124pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate' contextRef='Y20' unitRef='Pure' decimals='INF' scale='-2' format='ixt:numdotdecimal'>0.56</ix:nonFraction>%</p>
</td><td valign='top' style='background-color:#CCEEFF;width:86.5pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:136.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>-</p>
</td></tr>
<tr><td valign='top' style='width:775.35pt'><p style='font:10pt Times New Roman;margin:0'>Expected life of options</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:139.5pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>-</p>
</td><td valign='top' style='width:70.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:124pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonNumeric name='us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1' contextRef='Y20' format='ixt-sec:duryear'>5.3</ix:nonNumeric> years</p>
</td><td valign='top' style='width:86.5pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.6pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:136.15pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>-</p>
</td></tr>
</table>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The per share weighted average fair value of options granted during 2020 is $<ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue' contextRef='Y20' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>16.17</ix:nonFraction>. No options were granted in 2021 or 2019.</p>
</ix:nonNumeric><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>49</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><ix:continuation id='c4'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt'>All UTMD options vest over a four-year service period. &#160;At December 31, 2021 there was $<ix:nonFraction name='us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>286</ix:nonFraction> total unrecognized compensation expense related to non-vested stock options under the plans. A $<ix:nonFraction name='fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>172</ix:nonFraction> portion of the cost is expected to be recognized over the next <ix:nonNumeric name='fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition' contextRef='Y21' format='ixt-sec:durwordsen'>twelve months</ix:nonNumeric>, and the remaining $<ix:nonFraction name='fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>114</ix:nonFraction> recognized over the next <ix:nonNumeric name='fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition' contextRef='Y21' format='ixt-sec:duryear'>2</ix:nonNumeric> years. Expected dividend amounts were estimated based on the actual cash dividend rate at the time the options were granted and an estimate of future dividends based on past dividend rate changes as well as management&#8217;s expectations of future dividend rates over the expected holding period of the options. &#160;Expected volatility is based on UTMD&#8217;s historical volatility over recent periods of time and trends in that volatility, giving weight to more recent periods. &#160;Risk free interest rates were estimated based on actual U.S. Treasury Securities Interest rates as reported by the Federal Reserve Bank for periods of time equivalent to the holding periods estimated for the options on the dates the options were granted. &#160;Expected term of options were estimated based on historical holding periods for similar options previously granted by UTMD to employees and directors. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The following table summarizes information about stock options outstanding at December 31, 2021:</p>
<ix:nonNumeric name='us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:28.1pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td colspan='3' valign='bottom' style='width:210.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:98.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='6' valign='bottom' style='width:590.4pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Options Outstanding</p>
</td><td valign='top' style='width:44.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td colspan='4' valign='bottom' style='width:385.9pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Options Exercisable</p>
</td></tr>
<tr><td valign='top' style='width:28.1pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td colspan='3' valign='bottom' style='width:210.4pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Range of Exercise Prices</p>
</td><td valign='top' style='width:98.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Number Outstanding</p>
</td><td valign='top' style='width:47.4pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Weighted Average Remaining Contractual Life (Years)</p>
</td><td valign='top' style='width:44.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Weighted Average Exercise Price</p>
</td><td valign='top' style='width:44.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Number Exercisable</p>
</td><td valign='top' style='width:44.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.95pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>Weighted Average Exercise Price</p>
</td></tr>
<tr><td valign='top' style='width:28.1pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td colspan='3' valign='bottom' style='width:210.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'> &#160;</p>
</td><td valign='top' style='width:98.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:47.4pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:44.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:44.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:44.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.95pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='bottom' style='width:157.1pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:28.1pt'><p style='font:10pt Times New Roman;margin:0'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:83.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' contextRef='Y21_StScenario-Range1' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>33.30</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>-</p>
</td><td valign='top' style='background-color:#CCEEFF;width:85.25pt'><p style='font:10pt Times New Roman;margin:0'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' contextRef='Y21_StScenario-Range1' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>58.50</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:98.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' contextRef='E21_StScenario-Range1' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>15,024</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:47.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:WeightedAverageRemainingContractualLifeYears' contextRef='E21_StScenario-Range1' unitRef='Pure' decimals='INF' scale='0' format='ixt:numdotdecimal'>3.44</ix:nonFraction> </p>
</td><td valign='top' style='background-color:#CCEEFF;width:44.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' contextRef='E21_StScenario-Range1' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>52.37</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:44.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' contextRef='E21_StScenario-Range1' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>15,024</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:44.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' contextRef='E21_StScenario-Range1' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>52.37</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:28.1pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:83.05pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' contextRef='Y21_StScenario-Range2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>74.64</ix:nonFraction></p>
</td><td valign='top' style='width:42.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>-</p>
</td><td valign='top' style='width:85.25pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' contextRef='Y21_StScenario-Range2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>77.05</ix:nonFraction></p>
</td><td valign='top' style='width:98.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:157.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' contextRef='E21_StScenario-Range2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>36,834</ix:nonFraction></p>
</td><td valign='top' style='width:47.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:157.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:WeightedAverageRemainingContractualLifeYears' contextRef='E21_StScenario-Range2' unitRef='Pure' decimals='INF' scale='0' format='ixt:numdotdecimal'>7.74</ix:nonFraction></p>
</td><td valign='top' style='width:44.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:157.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' contextRef='E21_StScenario-Range2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>76.12</ix:nonFraction></p>
</td><td valign='top' style='width:44.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:157.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' contextRef='E21_StScenario-Range2' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>19,263</ix:nonFraction></p>
</td><td valign='top' style='width:44.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:157.1pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' contextRef='E21_StScenario-Range2' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>75.82</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:28.1pt'><p style='font:10pt Times New Roman;margin:0'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:83.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' contextRef='Y21' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>33.30</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:42.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;color:#7F7F7F;text-align:center'><span style='color:#000000'>-</span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:85.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;color:#7F7F7F'><span style='color:#000000'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' contextRef='Y21' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>77.05</ix:nonFraction></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:98.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' contextRef='E21' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>51,858</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:47.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:WeightedAverageRemainingContractualLifeYears' contextRef='E21' unitRef='Pure' decimals='INF' scale='0' format='ixt:numdotdecimal'>6.49</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:44.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' contextRef='E21' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>69.24</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:44.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' contextRef='E21' unitRef='Shares' decimals='INF' scale='0' format='ixt:numdotdecimal'>34,287</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:44.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:26.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' contextRef='E21' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>65.55</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:601.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td colspan='7' valign='top' style='width:473.55pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:601.55pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:108.25pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:55.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:96.2pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:67.1pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:105.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:601.55pt'><p style='font:10pt Times New Roman;margin:0'>Intrinsic Value of Stock Options Exercised</p>
</td><td valign='top' style='background-color:#CCEEFF;width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:108.25pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>591</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:55.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:96.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>371</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:67.1pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:105.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>354</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:601.55pt'><p style='font:10pt Times New Roman;margin:0'>Intrinsic Value of Stock Options Outstanding</p>
</td><td valign='top' style='width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:108.25pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,595</ix:nonFraction></p>
</td><td valign='top' style='width:55.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:96.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,178</ix:nonFraction></p>
</td><td valign='top' style='width:67.1pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:20.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='width:105.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,553</ix:nonFraction></p>
</td></tr>
</table>
</ix:continuation><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='fil:GeographicInformationTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 9 &#8211;&#160;Geographic Information</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company had sales in the following geographic areas based on the customer&#8217;s country of domicile:</p>
<ix:nonNumeric name='fil:ScheduleOfGeographicInformationTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:560.1pt'></td><td valign='top' style='width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:560.1pt'><p style='font:10pt Times New Roman;margin:0'>United States</p>
</td><td valign='top' style='background-color:#CCEEFF;width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:CompanySalesInTheUnitedStates' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>30,659</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:CompanySalesInTheUnitedStates' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>25,866</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:CompanySalesInTheUnitedStates' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>27,493</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:560.1pt'><p style='font:10pt Times New Roman;margin:0'>Europe</p>
</td><td valign='top' style='width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:CompanySalesInEurope' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>7,434</ix:nonFraction></p>
</td><td valign='top' style='width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:CompanySalesInEurope' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,399</ix:nonFraction></p>
</td><td valign='top' style='width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:CompanySalesInEurope' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>8,906</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:560.1pt'><p style='font:10pt Times New Roman;margin:0'>Other</p>
</td><td valign='top' style='background-color:#CCEEFF;width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:CompanySalesOther' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,961</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:CompanySalesOther' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,913</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:CompanySalesOther' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,505</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric></ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><ix:nonNumeric name='fil:GeographicLongLivedAssetsInformationTextBlock' contextRef='Y21' escape='true' continuedAt='c5'><span style='border-bottom:1px solid #000000'>Note 10 &#8211;&#160;Long-lived Assets by Geographic Area</span> </ix:nonNumeric></p>
<p style='font:10pt Times New Roman;margin:0'><ix:continuation id='c5' continuedAt='c6'>&#160; </ix:continuation></p>
<ix:continuation id='c6'><p style='font:10pt Times New Roman;margin:0'>The Company&#8217;s long-lived assets by geographic area were as follows:</p>
<ix:nonNumeric name='fil:ScheduleOfLongLivedAssetsByGeographicAreaTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:560.1pt'></td><td valign='top' style='width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='bottom' style='width:101.8pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:560.1pt'><p style='font:10pt Times New Roman;margin:0'>United States</p>
</td><td valign='top' style='background-color:#CCEEFF;width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInTheUnitedStates' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>19,104</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInTheUnitedStates' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>23,327</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInTheUnitedStates' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>27,605</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:560.1pt'><p style='font:10pt Times New Roman;margin:0'>England</p>
</td><td valign='top' style='width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInEngland' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>19,339</ix:nonFraction></p>
</td><td valign='top' style='width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInEngland' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>21,871</ix:nonFraction></p>
</td><td valign='top' style='width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInEngland' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>23,548</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:560.1pt'><p style='font:10pt Times New Roman;margin:0'>Ireland</p>
</td><td valign='top' style='background-color:#CCEEFF;width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInIreland' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,990</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInIreland' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,173</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInIreland' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>2,639</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#FFFFFF;width:560.1pt'><p style='font:10pt Times New Roman;margin:0'>Australia</p>
</td><td valign='top' style='background-color:#FFFFFF;width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInAustralia' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>392</ix:nonFraction></p>
</td><td valign='top' style='background-color:#FFFFFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInAustralia' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>440</ix:nonFraction></p>
</td><td valign='top' style='background-color:#FFFFFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInAustralia' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>423</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:560.1pt'><p style='font:10pt Times New Roman;margin:0'>Canada</p>
</td><td valign='top' style='background-color:#CCEEFF;width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInCanada' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>653</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInCanada' contextRef='E20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>672</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='fil:LongLivedAssetsInCanada' contextRef='E19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>686</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#FFFFFF;width:560.1pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:50.95pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:65.2pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:24.45pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#FFFFFF;width:101.8pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
</table>
</ix:nonNumeric></ix:continuation><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>50</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><ix:nonNumeric name='fil:RevenuesbyproductcategoryandregionTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 11 &#8211;&#160;Revenues by Product Category and Geographic Region</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='fil:ScheduleofglobalrevenuesbyproductcategoryTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>Global revenues by product category:</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:508.15pt'> </td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Obstetrics</p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_ProductOrService-Obstetrics_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,675</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_ProductOrService-Obstetrics_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,523</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_ProductOrService-Obstetrics_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>5,000</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Gynecology/ Electrosurgery/ Urology</p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>21,973</ix:nonFraction></p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>20,552</ix:nonFraction></p>
</td><td valign='top' style='width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>25,354</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Neonatal</p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_ProductOrService-Neonatal_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,691</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_ProductOrService-Neonatal_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>5,870</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_ProductOrService-Neonatal_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6,066</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Blood Pressure Monitoring and Accessories</p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>15,715</ix:nonFraction></p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,233</ix:nonFraction></p>
</td><td valign='top' style='width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,484</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Total:</p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>49,054</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>42,178</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_StGeo-Global' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>46,904</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='fil:ScheduleofousrevenuesbyproductcategoryTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>Included in the Global revenues (above) were OUS revenues by product category:</p>
<table style='border-collapse:collapse;width:100%'><tr><td valign='top' style='width:508.15pt'> </td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Obstetrics</p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_ProductOrService-Obstetrics_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>735</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_ProductOrService-Obstetrics_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>846</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_ProductOrService-Obstetrics_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>947</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Gynecology/ Electrosurgery/ Urology</p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>11,053</ix:nonFraction></p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>9,934</ix:nonFraction></p>
</td><td valign='top' style='width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>13,731</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Neonatal</p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_ProductOrService-Neonatal_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,347</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_ProductOrService-Neonatal_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,490</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_ProductOrService-Neonatal_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>1,412</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Blood Pressure Monitoring and Accessories</p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>5,260</ix:nonFraction></p>
</td><td valign='top' style='width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,042</ix:nonFraction></p>
</td><td valign='top' style='width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:101.65pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,321</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:508.15pt'><p style='font:10pt Times New Roman;margin:0'>Total:</p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y21_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>18,395</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:65.05pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y20_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>16,312</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:79.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:24.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$</p>
</td><td valign='top' style='background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax' contextRef='Y19_StGeo-Ous' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>19,411</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'></p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='fil:ProductSaleAndPurchaseCommitmentsTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 12 - Product Sale and Purchase Commitments</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company has had license agreements for the rights to develop and market certain products or technologies owned by unrelated parties. &#160;The confidential terms of such agreements are unique and varied, depending on many factors relating to the value and stage of development of the technology licensed. &#160;Royalties on future product sales are a normal component of such agreements and are included in the Company&#8217;s cost of goods sold on an ongoing basis.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>In 2021, 2020 and 2019, UTMD received royalties of $<ix:nonFraction name='us-gaap:RoyaltyIncomeNonoperating' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>15</ix:nonFraction>, $<ix:nonFraction name='us-gaap:RoyaltyIncomeNonoperating' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>20</ix:nonFraction> and $<ix:nonFraction name='us-gaap:RoyaltyIncomeNonoperating' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>6</ix:nonFraction>, respectively, for the use of intellectual property. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>UTMD had $<ix:nonFraction name='us-gaap:ContractualObligation' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>4,891</ix:nonFraction> in operating lease and purchase commitments as of December 31, 2021.</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 13 &#8211;&#160;Employee Benefit Plans</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company sponsors a contributory 401(k) savings plan for U.S. employees, and contributory retirement plans for Ireland, UK, Australia and Canada employees. &#160;The Company&#8217;s matching contribution is determined annually by the board of directors. &#160;Company contributions were approximately $<ix:nonFraction name='us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>165</ix:nonFraction>, $<ix:nonFraction name='us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>167</ix:nonFraction> and $<ix:nonFraction name='us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>171</ix:nonFraction> for the years ended December 31, 2021, 2020 and 2019, respectively.</p>
</ix:nonNumeric><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>51</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/> <ix:nonNumeric name='us-gaap:LesseeOperatingLeasesTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 14 &#8211;&#160;Leases</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>UTMD has operating leases for a portion of its parking lot at its Midvale facility and an automobile at its Ireland facility. &#160;The remaining lease term on the parking lot is <ix:nonNumeric name='fil:LesseeOperatingLeaseForParkingLotTermOfContract' contextRef='D211231' format='ixt-sec:duryear'>10</ix:nonNumeric> years and on the automobile it is <ix:nonNumeric name='fil:LesseeOperatingLeaseForAutomobileTermOfContract' contextRef='D211231' format='ixt-sec:durmonth'>30</ix:nonNumeric> months. &#160;There are no options to extend or terminate the leases. &#160;The parking lot lease contains a provision that requires an adjustment every five years to the lease payment based on the change in the Consumer Price Index. &#160;This adjustment occurred in 2021 requiring an increase of $<ix:nonFraction name='fil:LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>87</ix:nonFraction> to the value of the right-of-use asset and lease liabilities. UTMD has no other leases yet to commence. &#160;As neither lease contains implicit rates, UTMD&#8217;s incremental borrowing rate, based on information available at adoption date, was used to determine the present value of the leases.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Operating lease costs for the years ended December 31, 2021, 2020, and 2019 were $<ix:nonFraction name='us-gaap:OperatingLeaseCost' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>63</ix:nonFraction>, $<ix:nonFraction name='us-gaap:OperatingLeaseCost' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>61</ix:nonFraction>, and $<ix:nonFraction name='us-gaap:OperatingLeaseCost' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>60</ix:nonFraction>, respectively.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Supplemental balance sheet information related to operating leases was as follows (<i>in thousands</i>):</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='fil:ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock' contextRef='Y21' escape='true'><br/><table style='border-collapse:collapse;width:100%'><tr style='height:23.85pt'><td valign='top' style='width:831.4pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:264.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>As of December 31, 2021</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:831.4pt'><p style='font:10pt Times New Roman;margin:0'>Operating lease right-of-use assets</p>
</td><td valign='top' style='background-color:#CCEEFF;width:264.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$<ix:nonFraction name='us-gaap:OperatingLeaseRightOfUseAsset' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>449</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:831.4pt'><p style='font:10pt Times New Roman;margin:0'><span style='-sec-ix-hidden:fact7'>Operating lease liabilities &#8211;&#160;current (included in Accrued Expenses)</span></p>
</td><td valign='top' style='width:264.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseLiabilityCurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>52</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:831.4pt'><p style='font:10pt Times New Roman;margin:0'>Operating lease liabilities &#8211;&#160;long term</p>
</td><td valign='top' style='background-color:#CCEEFF;width:264.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><span style='border-bottom:1px solid #000000'><ix:nonFraction name='us-gaap:OperatingLeaseLiabilityNoncurrent' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>396</ix:nonFraction></span></p>
</td></tr>
<tr><td valign='top' style='width:831.4pt'><p style='font:10pt Times New Roman;margin:0'>Total operating lease liabilities</p>
</td><td valign='top' style='width:264.35pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$<ix:nonFraction name='us-gaap:OperatingLeaseLiability' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>449</ix:nonFraction></p>
</td></tr>
</table>
</ix:nonNumeric><ix:nonNumeric name='us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock' contextRef='Y21' escape='true'><table style='border-collapse:collapse;width:100%'><tr style='height:23.75pt'><td valign='top' style='width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>Maturities of operating lease liabilities at December 31, 2021 were as follows (<i>in thousands</i>):</p>
</td><td valign='top' style='width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>As of December 31, 2021</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>2022</p>
</td><td valign='top' style='background-color:#CCEEFF;width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$<ix:nonFraction name='us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>66</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>2023</p>
</td><td valign='top' style='width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>66</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>2024</p>
</td><td valign='top' style='background-color:#CCEEFF;width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>57</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>2025</p>
</td><td valign='top' style='width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>49</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>2026</p>
</td><td valign='top' style='background-color:#CCEEFF;width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>49</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>Thereafter</p>
</td><td valign='top' style='width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>227</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:796.35pt'><p style='font:10pt Times New Roman;margin:0'> &#160;&#160;&#160;&#160;Total lease payments</p>
</td><td valign='top' style='background-color:#CCEEFF;width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$<ix:nonFraction name='us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>514</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:796.35pt'><p style='font:10pt Times New Roman;margin:0'> &#160;&#160;&#160;&#160;Less: imputed interest</p>
</td><td valign='top' style='width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>(<ix:nonFraction name='us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>65</ix:nonFraction>)</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:796.35pt'><p style='font:10pt Times New Roman;margin:0'> &#160;&#160;&#160;&#160;Total lease liabilities</p>
</td><td valign='top' style='background-color:#CCEEFF;width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>$<ix:nonFraction name='us-gaap:OperatingLeaseLiability' contextRef='E21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>449</ix:nonFraction></p>
</td></tr>
<tr><td valign='top' style='width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr><td valign='top' style='width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:23.75pt'><td valign='top' style='width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>The following table provides information on the lease terms and discount rates:</p>
</td><td valign='top' style='width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>As of December 31, 2021</p>
</td></tr>
<tr><td valign='top' style='background-color:#CCEEFF;width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>Weighted average remaining lease term &#160;(in years)</p>
</td><td valign='top' style='background-color:#CCEEFF;width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonNumeric name='us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1' contextRef='E21' format='ixt-sec:duryear'>9.1</ix:nonNumeric> years</p>
</td></tr>
<tr><td valign='top' style='width:796.35pt'><p style='font:10pt Times New Roman;margin:0'>Weighted average discount rate</p>
</td><td valign='top' style='width:299.4pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent' contextRef='E21' unitRef='Pure' decimals='INF' scale='-2' format='ixt:numdotdecimal'>3.6</ix:nonFraction>%</p>
</td></tr>
</table>
<p style='font:12pt Times New Roman;margin:0'>&#160;</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin-top:0pt;margin-bottom:10pt'>&#160;</p>
</ix:nonNumeric><p style='font:12pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:IntangibleAssetsDisclosureTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 15 &#8211;&#160;Distribution Agreement Purchase</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>UTMD completed the purchase of exclusive U.S. distribution rights for the Filshie Clip System from CooperSurgical, Inc. (CSI) on February 1, 2019, after which CSI will no longer sell the FILSHIE Clip System and UTMD will distribute the FILSHIE Clip System directly to clinical facilities in the U.S. The $<ix:nonFraction name='us-gaap:FinitelivedIntangibleAssetsAcquired1' contextRef='Y21_DistributionRightsAcquisition-CoopersurgicalInc' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>21,000</ix:nonFraction> purchase price represents an identifiable intangible asset which will be straight-line amortized and recognized as part of G&amp;A expenses over the <ix:nonFraction name='fil:RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' contextRef='Y21_DistributionRightsAcquisition-CoopersurgicalInc' unitRef='Pure' decimals='INF' scale='0' format='ixt:numdotdecimal'>4.75</ix:nonFraction> year remaining life of the prior CSI distribution agreement with Femcare. &#160;As part of the agreement, UTMD also purchased the remaining CSI inventory for approximately $2,100.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</ix:nonNumeric><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>52</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0'> &#160;</p>
 <ix:nonNumeric name='us-gaap:EarningsPerShareTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 16 &#8211;&#160;Earnings Per Share</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Basic earnings per share is calculated by dividing net income attributable to the common stockholders of the company by the weighted average number of common shares outstanding during the period. &#160;Diluted earnings per share is calculated by assuming the exercise of stock options at the closing price of stock at the end of 2021.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share:</p>
<table style='border-collapse:collapse;width:100%'><tr style='height:12.5pt'><td colspan='6' valign='top' style='width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td></tr>
<tr style='height:12.5pt'><td colspan='6' valign='top' style='width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td></tr>
<tr style='height:12.5pt'><td valign='top' style='width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'></td><td valign='middle' style='width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2021</p>
</td><td valign='top' style='width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2020</p>
</td><td valign='top' style='width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:12pt Times New Roman;margin:0;text-align:center'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0;text-align:center'>2019</p>
</td></tr>
<tr style='height:12.5pt'><td valign='top' style='background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><b>Numerator </b><i>(in thousands)</i></p>
</td><td valign='top' style='background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td></tr>
<tr style='height:11.2pt'><td valign='top' style='width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Net income</p>
</td><td valign='middle' style='width:184.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y21' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,788</ix:nonFraction></p>
</td><td valign='top' style='width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y20' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>10,798</ix:nonFraction></p>
</td><td valign='top' style='width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:ProfitLoss' contextRef='Y19' unitRef='USD' decimals='-3' scale='3' format='ixt:numdotdecimal'>14,727</ix:nonFraction></p>
</td></tr>
<tr style='height:12.5pt'><td valign='top' style='background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td></tr>
<tr style='height:12pt'><td valign='top' style='width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><b>Denominator</b></p>
</td><td valign='top' style='width:184.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='top' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td></tr>
<tr style='height:12.5pt'><td valign='top' style='background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Weighted average shares, basic</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfSharesOutstandingBasic' contextRef='Y21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,647</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfSharesOutstandingBasic' contextRef='Y20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,658</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfSharesOutstandingBasic' contextRef='Y19' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,721</ix:nonFraction></p>
</td></tr>
<tr style='height:12.5pt'><td valign='top' style='width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Dilutive effect of stock options</p>
</td><td valign='middle' style='width:184.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment' contextRef='Y21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>13</ix:nonFraction></p>
</td><td valign='top' style='width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment' contextRef='Y20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>14</ix:nonFraction></p>
</td><td valign='top' style='width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment' contextRef='Y19' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>18</ix:nonFraction></p>
</td></tr>
<tr style='height:12.5pt'><td valign='top' style='background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Diluted shares</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding' contextRef='Y21' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,660</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding' contextRef='Y20' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,672</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding' contextRef='Y19' unitRef='Shares' decimals='-3' scale='3' format='ixt:numdotdecimal'>3,739</ix:nonFraction></p>
</td></tr>
<tr style='height:12.5pt'><td valign='top' style='width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</td><td valign='middle' style='width:184.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='top' style='width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td></tr>
<tr style='height:12.5pt'><td valign='top' style='background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Earnings per share, basic</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareBasic' contextRef='Y21' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>4.05</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareBasic' contextRef='Y20' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>2.95</ix:nonFraction></p>
</td><td valign='top' style='background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareBasic' contextRef='Y19' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>3.96</ix:nonFraction></p>
</td></tr>
<tr style='height:12.5pt'><td valign='top' style='width:434.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Earnings per share, diluted</p>
</td><td valign='middle' style='width:184.95pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y21' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>4.04</ix:nonFraction></p>
</td><td valign='top' style='width:53pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y20' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>2.94</ix:nonFraction></p>
</td><td valign='top' style='width:52.15pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'>&#160;</p>
</td><td valign='middle' style='width:185.35pt;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:right'><ix:nonFraction name='us-gaap:EarningsPerShareDiluted' contextRef='Y19' unitRef='UsdPerShare' decimals='INF' scale='0' format='ixt:numdotdecimal'>3.94</ix:nonFraction></p>
</td></tr>
</table>
<p style='font:12pt Times New Roman;margin:0'>&#160;</p>
</ix:nonNumeric></ix:nonNumeric><p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 17 &#8211;&#160;Recent Accounting Pronouncements</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'>The Company has determined that other recently issued accounting standards will either have no material impact on its consolidated financial position, results of operations or cash flows, or will not apply to its operations.</p>
</ix:nonNumeric></ix:nonNumeric><p style='font:10pt Times New Roman;margin:0;color:#1F497D'> &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<ix:nonNumeric name='us-gaap:SubsequentEventsTextBlock' contextRef='Y21' escape='true'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Note 18 &#8211;&#160;Subsequent Events</span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>The Company evaluated its December 31, 2021 financial statements for subsequent events through the date the financial statements were issued. &#160;The Company is not aware of any subsequent events which would require recognition or disclosure in the financial statements. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
</ix:nonNumeric><p style='font:10pt Times New Roman;margin:0;color:#339966'></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>53</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a17'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 9 &#8211;&#160;CHANGES IN AND DISAGREEMENTS WITH ACCOUNTANTS ON ACCOUNTING AND FINANCIAL DISCLOSURE</b></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>None.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a18'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 9A &#8211;&#160;CONTROLS AND PROCEDURES</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Evaluation of Disclosure Controls and Procedures.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD Management is responsible for establishing and maintaining adequate internal control over financial reporting, as defined in the Securities Exchange Act of 1934 Rule 13a-15(e). &#160;UTMD&#8217;s Board of Directors, operating through its Audit Committee, provides oversight to its financial reporting process.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>During 2021, UTMD evaluated the effectiveness of the design and operation of its disclosure controls and procedures. Based on that evaluation, UTMD&#8217;s Chief Executive Officer and Principal Financial Officer concluded that, as of December 31, 2021, its disclosure controls and procedures were effective.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Management&#8217;s Report on Internal Control Over Financial Reporting.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>Pursuant to Section&#160;404 of the Sarbanes-Oxley Act of 2002, the Company has included, as part of this Form&#160;10-K, a report of management's assessment of the effectiveness of its internal controls as of December&#160;31, 2021. &#160;Management's report appears on page&#160;36 of this Form&#160;10-K under the caption &quot;Management's Report on Internal Control Over Financial Reporting&quot; and is incorporated herein by reference. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>Changes in Internal Control Over Financial Reporting.</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>There have been no changes in UTMD&#8217;s internal control over financial reporting that materially affected, or were reasonably likely to materially affect, the Company&#8217;s internal control over financial reporting during the fourth quarter of the fiscal year ended December 31, 2021, and there were no material weaknesses.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a19'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 9B &#8211;&#160;OTHER INFORMATION</b></p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>None. &#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>54</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a20'></a><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'><b>PART III</b></span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a21'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 10 &#8211;&#160;DIRECTORS, EXECUTIVE OFFICERS AND CORPORATE GOVERNANCE</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The information from the definitive proxy statement of the registrant for the 2022 annual meeting of stockholders under the captions, &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;PROPOSAL NO. 1. ELECTION OF DIRECTORS: General,&#8221; and &#8220;Directors and Nominees,&#8221; &#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;SECURITY OWNERSHIP OF MANAGEMENT AND CERTAIN PERSONS,&#8221; and &#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;EXECUTIVE OFFICER COMPENSATION: 2021 Director Compensation,&#8221; &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>is incorporated herein by reference. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>UTMD adopted a Code of Ethics for its executive officers, including the Chief Executive Officer and outside directors, in October 2003. &#160;The Code of Ethics, along with UTMD&#8217;s Code of Conduct, which covers all exempt employees (including all officers and outside directors) and certain non-exempt employees, is posted on UTMD&#8217;s web site at www.utahmed.com. &#160;UTMD intends to post on its website any waivers of or amendments to its Code of Ethics. &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a22'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 11 - EXECUTIVE COMPENSATION</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The information from the definitive proxy statement of the registrant for the 2022 annual meeting of stockholders under the captions,&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;EXECUTIVE OFFICER COMPENSATION,&#8221;&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;COMPENSATION DISCUSSION AND ANALYSIS,&#8221; and&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;BOARD OF DIRECTORS AND OTHER BOARD COMMITTEE REPORTS: Compensation and Option Committee Interlocks and Insider Participation,&#8221; specifically excluding the &#8220;Report of the Compensation Committee&#8221;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>is incorporated herein by reference. </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a23'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 12 - SECURITY OWNERSHIP OF CERTAIN BENEFICIAL OWNERS AND MANAGEMENT AND RELATED STOCKHOLDER MATTERS</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The information from the definitive proxy statement of the registrant for the 2022 annual meeting of stockholders under the captions, &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;SECURITY OWNERSHIP OF MANAGEMENT AND CERTAIN PERSONS&#8221; and&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;DISCLOSURE RESPECTING THE COMPANY&#8217;S EQUITY COMPENSATION PLANS&#8221; &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>is incorporated herein by reference.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a24'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 13 - CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS, AND DIRECTOR INDEPENDENCE</b> </p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The information from the definitive proxy statement of the registrant for the 2022 annual meeting of stockholders under the captions, &#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;CERTAIN RELATIONSHIPS AND RELATED TRANSACTIONS&#8221;&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:36pt'><kbd style='position:absolute;font:10pt Symbol;margin-left:-18pt'>&#183;</kbd><kbd style='margin-left:-4.5pt'></kbd>&#8220;BOARD OF DIRECTORS AND OTHER BOARD COMMITTEE REPORTS: Director Independence&#8221;&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>is incorporated herein by reference.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The information from the definitive proxy statement of the registrant for the 2022 annual meeting of stockholders in the first paragraph under the caption, &#8220;Report of the Audit Committee&#8221; is incorporated herein by reference.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a25'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 14 &#8211;&#160;PRINCIPAL ACCOUNTING FEES AND SERVICES</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>The information from the definitive proxy statement of the registrant for the 2022 annual meeting of stockholders under the caption &#8220;PROPOSAL NO 2. RATIFICATION OF THE APPOINTMENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM: Fees billed by Haynie &amp; Company,&#8221; &#8220;Audit Committee Policy and Approval,&#8221; and &#8220;Auditor Independence&#8221; are incorporated herein by reference. &#160;&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>55</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a26'></a><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'><b>PART IV</b></span></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<a id='a27'></a><p style='font:10pt Times New Roman;margin:0'><b>ITEM 15 &#8211;&#160;EXHIBITS, FINANCIAL STATEMENT SCHEDULES</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:7.2pt'></kbd>(a) &#160;The following documents are filed as part of this report or incorporated herein by reference.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Dutch801SWC;margin-left:7.2pt'>1.</kbd><kbd style='margin-left:22.5pt'></kbd>Financial Statements.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:22.5pt'></kbd>(See Table of Contents to Item 8, above.)&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Dutch801SWC;margin-left:7.2pt'>2.</kbd><kbd style='margin-left:22.5pt'></kbd>Supplemental Schedule.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:22.5pt'></kbd>Financial Statement Schedules are omitted because they are inapplicable or the required information is otherwise included in the accompanying Financial Statements and the notes thereto.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Dutch801SWC;margin-left:7.2pt'>3.</kbd><kbd style='margin-left:22.5pt'></kbd>Exhibits.&#160;</p>
<table style='border-collapse:collapse;width:100%'><tr style='height:1pt'><td valign='bottom' style='width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'><span style='border-bottom:1px solid #000000'>Exhibit #</span></p>
</td><td valign='bottom' style='width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Title of Document</span></p>
</td><td valign='bottom' style='width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='border-bottom:1px solid #000000'>Location</span></p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>3.1</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='http://www.sec.gov/Archives/edgar/data/706698/000109690605000089/utahmed10k12312004ex1.txt' style='text-decoration:none'>Articles of Restatement of the Articles of Incorporation</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Incorporated by Reference (1)</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>3.2</p>
</td><td valign='top' style='width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='http://www.sec.gov/Archives/edgar/data/706698/000109690605000089/utahmed10k12312004ex2.txt' style='text-decoration:none'>Articles of Correction to the Restated Articles of Incorporation</a></span> </p>
</td><td valign='top' style='width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Incorporated by Reference (1)</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>3.3</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='http://www.sec.gov/Archives/edgar/data/706698/000109690614000174/exhibit99-1.htm' style='text-decoration:none'>Bylaws</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Incorporated by Reference (2)</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>10.1</p>
</td><td valign='top' style='width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='http://www.sec.gov/Archives/edgar/data/706698/000109690604000128/utmd10kdec2003ex-10.txt' style='text-decoration:none'>Employment Agreement dated December 21, 1992 with Kevin L. Cornwell*</a></span></p>
</td><td valign='top' style='width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Incorporated by Reference (3)</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>10.2</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='http://www.sec.gov/Archives/edgar/data/706698/000109690604000128/utmd10kdec2003ex10-2.txt' style='text-decoration:none'>Amendment, effective May 15, 1998, to Employment Agreement dated December 21, 1992 with Kevin L. Cornwell*</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Incorporated by Reference (3)</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>10.3</p>
</td><td valign='top' style='width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='http://www.sec.gov/Archives/edgar/data/706698/000109690603000132/0001096906-03-000132.txt' style='text-decoration:none'>Utah Medical Products, Inc., 2003 Employees&#8217; and Directors&#8217; Incentive Plan*</a></span></p>
</td><td valign='top' style='width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Incorporated by Reference (4)</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>10.4</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='http://www.sec.gov/Archives/edgar/data/706698/000109690613000303/utahmedexh991.htm' style='text-decoration:none'>Utah Medical Products, Inc., 2013 Employees&#8217; and Directors&#8217; Incentive Plan*</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>Incorporated by Reference (5)</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>10.5</p>
</td><td valign='top' style='width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='utmd_ex10z5.htm' style='text-decoration:none'>Summary of Officer and Director Compensation</a></span></p>
</td><td valign='top' style='width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This filing</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>21</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='utmd_ex21.htm' style='text-decoration:none'>Subsidiaries of Utah Medical Products, Inc.</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This filing</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>23.1</p>
</td><td valign='top' style='width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='utmd_ex23z1.htm' style='text-decoration:none'>Consent of Haynie &amp; Company, UTMD&#8217;s independent auditors for the year</a><a href='utmd_ex23z1.htm' style='text-decoration:none'>s</a><a href='utmd_ex23z1.htm' style='text-decoration:none'> ended </a><a href='utmd_ex23z1.htm' style='text-decoration:none'>December 31, 2021 and </a><a href='utmd_ex23z1.htm' style='text-decoration:none'>December 31, 20</a><a href='utmd_ex23z1.htm' style='text-decoration:none'>20</a></span></p>
</td><td valign='top' style='width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This filing</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>23.2</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='utmd_ex23z2.htm' style='text-decoration:none'>Consent of Nortons Assurance Limited, Femcare Group Limited&#8217;s independent auditors for the years ended December 31, 20</a><a href='utmd_ex23z2.htm' style='text-decoration:none'>21 and</a><a href='utmd_ex23z2.htm' style='text-decoration:none'> December 31, 20</a><a href='utmd_ex23z2.htm' style='text-decoration:none'>20</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This filing</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>31.1</p>
</td><td valign='top' style='width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'><span style='color:#0000FF;border-bottom:1px solid #0000FF'><a href='utmd_ex31z1.htm' style='text-decoration:none'>Certification of CEO pursuant to Rule 13a-14(a) as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002</a></span></p>
</td><td valign='top' style='width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This Filing</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>31.2</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='utmd_ex31z2.htm' style='text-decoration:none'>Certification of Principal Financial Officer pursuant to Rule 13a-14(a) as adopted pursuant to Section 302 of the Sarbanes-Oxley Act of 2002</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This Filing</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>32.1</p>
</td><td valign='top' style='width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='utmd_ex32z1.htm' style='text-decoration:none'>Certification of CEO pursuant to 18 U.S.C. &#167;1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</a></span></p>
</td><td valign='top' style='width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This Filing</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>32.2</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='utmd_ex32z2.htm' style='text-decoration:none'>Certification of Principal Financial Officer pursuant to 18 U.S.C. &#167;1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002</a></span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This Filing</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>101</p>
</td><td valign='top' style='width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman'>The following financial information from the Utah Medical Products, Inc. Annual Report on Form 10-K for the fiscal year ended December 31, 2021, formatted in Inline Extensible Business Reporting Language (iXBRL): &#160;(i) Consolidated Balance Sheets, (ii) Consolidated Statements of Income and Comprehensive Income, (iii) Consolidated Statements of Cash Flow, (iv) Consolidated Statements of Stockholders&#8217; Equity, and (v) related Notes to the Consolidated Financial Statements, tagged in detail.</span></p>
</td><td valign='top' style='width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This Filing</p>
</td></tr>
<tr style='height:1pt'><td valign='top' style='background-color:#CCEEFF;width:12.72%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0;text-align:center'>104</p>
</td><td valign='top' style='background-color:#CCEEFF;width:68.16%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman'>Cover Page Interactive Data File (the cover page XBRL tags are embedded within the Inline XBRL document)</span></p>
</td><td valign='top' style='background-color:#CCEEFF;width:19.12%;padding-left:5.75pt;padding-right:5.75pt'><p style='font:10pt Times New Roman;margin:0'>This Filing</p>
</td></tr>
</table>
<p style='font:10pt Times New Roman;margin:0;margin-right:646.35pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>* Management contract of compensatory plan or arrangement required to be filed pursuant to Item 14(c).</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:9pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:40.5pt'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:-18pt'>(1)</kbd>Incorporated by reference from the Company&#8217;s annual report on form 10-K filed with the Commission for the year ended December 31, 2004.&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:40.5pt'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:-18pt'>(2)</kbd>Incorporated by reference from the Company&#8217;s report on form 8-K filed with the Commission on February 13, 2014.&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:40.5pt'><kbd style='position:absolute;font:10pt Times New Roman;margin-left:-18pt'>(3)</kbd>Incorporated by reference from the Company&#8217;s annual report on form 10-K filed with the Commission for the year ended December 31, 2003.&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:40.5pt'><kbd style='position:absolute;font:10pt Dutch801SWC;margin-left:-18pt'>(4)</kbd>Incorporated by reference from the Company&#8217;s 2003 definitive proxy statement on form DEF 14A filed with the Commission on March 27, 2003.&#160;</p>
<p style='font:10pt Times New Roman;margin:0;margin-left:40.5pt'><kbd style='position:absolute;font:10pt Dutch801SWC;margin-left:-18pt'>(5)</kbd>Incorporated by reference from the Company&#8217;s 2013 definitive proxy statement on form DEF 14A filed with the Commission on March 7, 2013.&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-indent:-40.5pt;margin-left:40.5pt'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-indent:-18pt;margin-left:40.3pt'>&#160;</p>
<a id='a28'></a><p style='font:10pt Times New Roman;margin:0;text-indent:-40.5pt;margin-left:40.5pt'><b>ITEM 16 &#8211;&#160;FORM 10-K SUMMARY</b></p>
<p style='font:10pt Times New Roman;margin:0;margin-left:40.5pt'><kbd style='position:absolute;font:10pt Dutch801SWC;margin-left:-31.5pt'>None.</kbd><kbd style='margin-left:31.5pt'></kbd> &#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>56</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><a id='a30'></a><p style='font:10pt Times New Roman;margin:0;text-indent:-40.5pt;margin-left:40.5pt;text-align:center'><b>SIGNATURES</b></p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Pursuant to the requirements of Section 13 or 15(d) of the Securities Exchange Act of 1934, the registrant has duly caused this report to be signed on its behalf by the undersigned this 25th day of March 2022.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0;text-align:center'>UTAH MEDICAL PRODUCTS, INC.</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='position:absolute;font:10pt Dutch801SWC;margin-left:103.5pt'>By:</kbd><kbd style='margin-left:126pt'></kbd><span style='border-bottom:1px solid #000000'>/s/ Kevin L. Cornwell </span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:126pt'></kbd>Kevin L. Cornwell&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:126pt'></kbd>Chief Executive Officer&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:9pt'></kbd>Pursuant to the requirements of the Securities Exchange Act of 1934, this report has been signed below by the following persons on behalf of the registrant and in the capacities indicated on this 25th day of March 2022.&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:103.5pt'></kbd>By: &#160;<span style='border-bottom:1px solid #000000'> /s/ James H. Beeson</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:117pt'></kbd>James H. Beeson, Director&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:103.5pt'></kbd>By: &#160;<span style='border-bottom:1px solid #000000'> /s/ Kevin L. Cornwell</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:117pt'></kbd>Kevin L. Cornwell, Director&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:103.5pt'></kbd>By: &#160;<span style='border-bottom:1px solid #000000'> /s/ Ernst G. Hoyer</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:117pt'></kbd>Ernst G. Hoyer, Director&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:103.5pt'></kbd>By: &#160;<span style='border-bottom:1px solid #000000'> /s/ Barbara A. Payne</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:117pt'></kbd>Barbara A. Payne, Director&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:103.5pt'></kbd>By: &#160;<span style='border-bottom:1px solid #000000'> /s/ Paul O. Richins</span>&#160;</p>
<p style='font:10pt Times New Roman;margin:0'><kbd style='margin-left:115.2pt'></kbd>Paul O. Richins, Director&#160;</p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><p style='font:10pt Times New Roman;margin:0;text-align:center'>57</p>
<hr style='page-break-after:always;border:0;height:1.5pt;background-color:#909090;margin:8pt 0'/><p style='line-height:0;margin:0'></p>
<p style='font:10pt Dutch801SWC;margin:0'><span style='font-family:Times New Roman;color:#0000FF;border-bottom:1px solid #0000FF'><a href='#a1' style='text-decoration:none'>Table of Contents</a></span></p>
<hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/><hr style='border:0;height:0;width:0;margin:14pt 0 0 0'/></div>
</body>
</html>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-10.5
<SEQUENCE>2
<FILENAME>utmd_ex10z5.htm
<DESCRIPTION>EXHIBIT 10.5
<TEXT>
<HTML>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<HEAD>
</HEAD>
<BODY>
<DIV><P align=right style='font:10pt Times New Roman;margin:0'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Exhibit 10.5</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>SUMMARY of OFFICER and DIRECTOR COMPENSATION </B></P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>The Employment Agreement in Exhibits 7 &amp; 8 of this report is the only written contractual compensation arrangement the Company has with any of its Directors and Executive Officers. &nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>During 2022, the Company&#8217;s Chief Executive and Principal Financial Officer (the Company&#8217;s &#8220;Named Executive Officers&#8221;) are scheduled to receive the following compensation from the Company: &nbsp;</P>
<TABLE style=border-collapse:collapse;width:100%><TR><TD valign=top style=width:216pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>Compensation Arrangement</FONT></P>
</TD><TD valign=top style=width:13.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top style=width:175.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>2022 Scheduled Amount</FONT></P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:216pt><P style='font:10pt Times New Roman;margin:0'>Base salary</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:13.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:175.5pt><P style='font:10pt Times New Roman;margin:0'>$ &nbsp;156,000 (CEO); $113,000 (PFO)</P>
</TD></TR>
<TR><TD valign=top style=width:216pt><P style='font:10pt Times New Roman;margin:0'>401(k) matching contributions</P>
</TD><TD valign=top style=width:13.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top style=width:175.5pt><P style='font:10pt Times New Roman;margin:0'> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;6,408 (maximum)</P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:216pt><P style='font:10pt Times New Roman;margin:0'>Section 125 plan matching contributions (1)</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:13.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:175.5pt><P style='font:10pt Times New Roman;margin:0'> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;500 (maximum)</P>
</TD></TR>
<TR><TD valign=top style=width:216pt><P style='font:10pt Times New Roman;margin:0'>Management bonus</P>
</TD><TD valign=top style=width:13.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top style=width:175.5pt><P style='font:10pt Times New Roman;margin:0'>will be determined at year-end</P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:216pt><P style='font:10pt Times New Roman;margin:0'>Pet health benefits (1)</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:13.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:175.5pt><P style='font:10pt Times New Roman;margin:0'> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;500 (maximum)</P>
</TD></TR>
<TR><TD valign=top style=width:216pt><P style='font:10pt Times New Roman;margin:0'>Family medical benefits (1)</P>
</TD><TD valign=top style=width:13.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top style=width:175.5pt><P style='font:10pt Times New Roman;margin:0'>will depend on future events </P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:216pt><P style='font:10pt Times New Roman;margin:0'>Travel expense reimbursement (2)</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:13.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:175.5pt><P style='font:10pt Times New Roman;margin:0'> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5,000 (CEO); 500 (PFO)</P>
</TD></TR>
<TR><TD valign=top style=width:216pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top style=width:13.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD><TD valign=top style=width:175.5pt><P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
</TD></TR>
</TABLE>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>During 2022, the Company&#8217;s Directors are scheduled to receive the following compensation from the Company:</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<TABLE style=border-collapse:collapse;width:100%><TR><TD valign=top style=width:166.5pt><P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>Compensation Arrangement</FONT></P>
</TD><TD valign=top style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>Ernst Hoyer</FONT></P>
</TD><TD valign=top style=width:63pt><P align=right style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>Barbara Payne</FONT></P>
</TD><TD valign=top style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>James Beeson</FONT></P>
</TD><TD valign=top style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>Paul Richins </FONT></P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:166.5pt><P style='font:10pt Times New Roman;margin:0'>Base</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>$ &nbsp;28,000</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:63pt><P align=right style='font:10pt Times New Roman;margin:0'>$ &nbsp;28,000</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>$ &nbsp;28,000</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>$28,000</P>
</TD></TR>
<TR><TD valign=top style=width:166.5pt><P style='font:10pt Times New Roman;margin:0'>Executive Committee </P>
</TD><TD valign=top style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>4,000</P>
</TD><TD valign=top style=width:63pt><P align=right style='font:10pt Times New Roman;margin:0'>- &nbsp;</P>
</TD><TD valign=top style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>-</P>
</TD><TD valign=top style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>-</P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:166.5pt><P style='font:10pt Times New Roman;margin:0'>Audit Committee Chairman</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>4,000</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:63pt><P align=right style='font:10pt Times New Roman;margin:0'>- &nbsp;</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>-</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>-</P>
</TD></TR>
<TR><TD valign=top style=width:166.5pt><P style='font:10pt Times New Roman;margin:0'>Travel Expense Reimbursement (2)</P>
</TD><TD valign=top style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>250</P>
</TD><TD valign=top style=width:63pt><P align=right style='font:10pt Times New Roman;margin:0'>450</P>
</TD><TD valign=top style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>400</P>
</TD><TD valign=top style=width:58.5pt><P align=right style='font:10pt Times New Roman;margin:0'>50</P>
</TD></TR>
</TABLE>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>(1) &nbsp;&nbsp;CEO and PFO participate on the same basis as other eligible employees.</P>
<P style='font:10pt CG Times;margin:0'><FONT style='font-family:Times New Roman'>(2) &nbsp;&nbsp;Estimated 2022 travel expenses on behalf of UTMD business. &nbsp;The Company reimburses its employees and directors for authorized business expenses.</FONT></P>
</DIV>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-21
<SEQUENCE>3
<FILENAME>utmd_ex21.htm
<DESCRIPTION>EXHIBIT 21
<TEXT>
<HTML>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<HEAD>
</HEAD>
<BODY>
<DIV><P align=right style='font:10pt Times New Roman;margin:0'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Exhibit 21</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>SUBSIDIARIES of UTAH MEDICAL PRODUCTS, INC.</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P align=center style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<TABLE style=border-collapse:collapse;width:100%><TR><TD valign=top style=width:183.9pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>Subsidiary Name</FONT></P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>Jurisdiction of Organization</FONT></P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'>Business Name</FONT></P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:183.9pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Utah Medical Products Ltd.</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Bermuda</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Utah Medical Products</P>
</TD></TR>
<TR><TD valign=top style=width:183.9pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Columbia Medical &amp; Surgical, Inc.</P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Oregon</P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Utah Medical Products</P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:183.9pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Abcorp Medical</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Florida</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Utah Medical Products</P>
</TD></TR>
<TR><TD valign=top style=width:183.9pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Femcare Group Limited</P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>United Kingdom</P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Femcare Group</P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:183.9pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Femcare Limited</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>United Kingdom</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Femcare Limited</P>
</TD></TR>
<TR><TD valign=top style=width:183.9pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Femcare Australia Pty Ltd</P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Australia</P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Femcare Australia</P>
</TD></TR>
<TR><TD valign=top bgcolor=#CCEEFF style=width:183.9pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Femcare N.Z. Ltd</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>New Zealand</P>
</TD><TD valign=top bgcolor=#CCEEFF style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Femcare Australia</P>
</TD></TR>
<TR><TD valign=top style=width:183.9pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Utah Medical Products Canada Inc.</P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Canada</P>
</TD><TD valign=top style=width:183.95pt;padding-left:5.4pt;padding-right:5.4pt><P style='font:10pt Times New Roman;margin:0'>Femcare Canada</P>
</TD></TR>
</TABLE>
<P style='font:10pt CG Times;margin:0'>&nbsp;</P>
</DIV>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.1
<SEQUENCE>4
<FILENAME>utmd_ex23z1.htm
<DESCRIPTION>EXHIBIT 23.1
<TEXT>
<HTML>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<HEAD>
</HEAD>
<BODY>
<DIV><P align=right style='font:10pt Times New Roman;margin:0'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Exhibit 23.1</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</B></P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P align=justify style='font:10pt Times New Roman;margin:0;color:#000000;background-color:#FFFFFF'>We consent to the incorporation by reference in Registration Statement No. 333-199337 (on Form S-8) of Utah Medical Products, Inc. of our audit report dated March 25, 2022, on the consolidated financial statements of Utah Medical Products, Inc., which report appears in this annual report on Form 10-K of Utah Medical Products, Inc. for the year ended December 31, 2021.</P>
<P style='font:10pt Times New Roman;margin:0;color:#000000;background-color:#FFFFFF'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;color:#000000;background-color:#FFFFFF'><FONT style='border-bottom:1px solid #000000'>/s/ Haynie &amp; Company</FONT></P>
<P style='font:10pt Times New Roman;margin:0'>Haynie &amp; Company</P>
<P style='font:10pt Times New Roman;margin:0'>Salt Lake City, Utah</P>
<P style='font:10pt CG Times;margin:0'><FONT style='font-family:Times New Roman'>March 25, 2022</FONT></P>
</DIV>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-23.2
<SEQUENCE>5
<FILENAME>utmd_ex23z2.htm
<DESCRIPTION>EXHIBIT 23.2
<TEXT>
<HTML>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<HEAD>
</HEAD>
<BODY>
<DIV><P align=right style='font:10pt Times New Roman;margin:0'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Exhibit 23.2</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>CONSENT OF INDEPENDENT REGISTERED PUBLIC ACCOUNTING FIRM</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P align=center style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>Utah Medical Products, Inc.</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>We consent to the incorporation by reference in Registration Statement Nos. 333-127946, 333-199337 &nbsp;(on Form S-8), and 333-182078 (on Form S-3) of Utah Medical Products, Inc. of our audit reports dated 25 March, 2022, on the financial statements of Femcare Group Limited, which reports appear in this annual report on Form 10-K of Utah Medical Products, Inc. for the years ended 31 December 2021 and 2020.</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>Nortons Assurance Limited</P>
<P style='font:10pt Times New Roman;margin:0'>Chartered Accountants and Statutory Auditor</P>
<P style='font:10pt Times New Roman;margin:0'>Reading</P>
<P style='font:10pt CG Times;margin:0'><FONT style='font-family:Times New Roman'>United Kingdom</FONT></P>
</DIV>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.1
<SEQUENCE>6
<FILENAME>utmd_ex31z1.htm
<DESCRIPTION>EXHIBIT 31.1
<TEXT>
<HTML>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<HEAD>
</HEAD>
<BODY>
<DIV><P align=right style='font:10pt Times New Roman;margin:0;margin-left:36pt'><B>Exhibit 31.1</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>CERTIFICATION OF CEO </B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>PURSUANT TO RULE 13a-14(a) AS ADOPTED PURSUANT TO </B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002 </B></P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>I, Kevin L. Cornwell, certify that:</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>1.</KBD><KBD style=margin-left:18pt></KBD>I have reviewed this annual report on Form 10-K of Utah Medical Products, Inc.; &nbsp;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>2.</KBD><KBD style=margin-left:18pt></KBD>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;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>3.</KBD><KBD style=margin-left:18pt></KBD>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;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>4.</KBD><KBD style=margin-left:18pt></KBD>The registrant's other certifying officer 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:&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt CG Times;margin-left:-15.3pt'>(a)</KBD>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;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;text-indent:-36pt;margin-left:33.3pt'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(b)</KBD>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;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(c)</KBD>evaluated the effectiveness of the registrant&#8217;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 &nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(d)</KBD>disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:18pt'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>5.</KBD><KBD style=margin-left:18pt></KBD>The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of registrant&#8217;s board of directors (or persons performing the equivalent functions):&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(a)</KBD>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&#8217;s ability to record, process, summarize and report financial information; and&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;text-indent:-36pt;margin-left:33.3pt'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(b)</KBD>any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>Date: March 25, 2022</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'> &nbsp;&nbsp;&nbsp;/s/ Kevin L. Cornwell &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT></P>
<P style='font:10pt Times New Roman;margin:0'>Kevin L. Cornwell</P>
<P style='font:10pt Times New Roman;margin:0'>Chief Executive Officer</P>
<P style='font:10pt CG Times;margin:0'>&nbsp;</P>
</DIV>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-31.2
<SEQUENCE>7
<FILENAME>utmd_ex31z2.htm
<DESCRIPTION>EXHIBIT 31.2
<TEXT>
<HTML>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<HEAD>
</HEAD>
<BODY>
<DIV><P align=right style='font:10pt Times New Roman;margin:0'><B>Exhibit 31.2</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>CERTIFICATION OF PRINCIPAL FINANCIAL OFFICER </B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>PURSUANT TO RULE 13a-14(a) AS ADOPTED PURSUANT TO </B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002 </B></P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>I, Brian L. Koopman, certify that:</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>1.</KBD><KBD style=margin-left:18pt></KBD>I have reviewed this annual report on Form 10-K of Utah Medical Products, Inc.; &nbsp;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>2.</KBD><KBD style=margin-left:18pt></KBD>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;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>3.</KBD><KBD style=margin-left:18pt></KBD>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 quarterly report;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>4.</KBD><KBD style=margin-left:18pt></KBD>The registrant's other certifying officer 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:&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(a)</KBD>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;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;text-indent:-15.3pt;margin-left:33.3pt'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(b)</KBD>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;&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(c)</KBD>evaluated the effectiveness of the registrant&#8217;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 &nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(d)</KBD>disclosed in this report any change in the registrant&#8217;s internal control over financial reporting that occurred during the registrant&#8217;s most recent fiscal quarter (the registrant&#8217;s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant&#8217;s internal control over financial reporting; and&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:18pt'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><KBD style='position:absolute;font:10pt CG Times;margin-left:0.05pt'>5.</KBD><KBD style=margin-left:18pt></KBD>The registrant&#8217;s other certifying officer and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant&#8217;s auditors and the audit committee of registrant&#8217;s board of directors (or persons performing the equivalent functions):&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(a)</KBD>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&#8217;s ability to record, process, summarize and report financial information; and&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;text-indent:-36pt;margin-left:33.3pt'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:33.3pt'><KBD style='position:absolute;font:10pt Times New Roman;margin-left:-15.3pt'>(b)</KBD>any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant&#8217;s internal control over financial reporting.&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>Date: March 25, 2022</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/s/ Brian L. Koopman &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT></P>
<P style='font:10pt Times New Roman;margin:0'>Brian L. Koopman</P>
<P style='font:10pt Times New Roman;margin:0'>Principal Financial Officer</P>
</DIV>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.1
<SEQUENCE>8
<FILENAME>utmd_ex32z1.htm
<DESCRIPTION>EXHIBIT 32.1
<TEXT>
<HTML>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<HEAD>
</HEAD>
<BODY>
<DIV><P align=right style='font:10pt Times New Roman;margin:0'><B>Exhibit 32.1</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>CERTIFICATION PURSUANT TO</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>18 U.S.C. SECTION 1350,</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>AS ADOPTED PURSUANT TO</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>In connection with the Annual Report of Utah Medical Products, Inc. (the &#8220;Company&#8221;) on Form 10-K for the period ending December 31, 2021, as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), I, Kevin L. Cornwell, Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that, to the best of my knowledge and belief:</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:36pt'><KBD style='position:absolute;font:10pt CG Times;margin-left:-34.2pt'>(1)</KBD>the Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and &nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:36pt'><KBD style='position:absolute;font:10pt CG Times;margin-left:-34.2pt'>(2)</KBD>the information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;text-indent:-73.8pt;margin-left:73.8pt'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'> &nbsp;&nbsp;&nbsp;&nbsp;/s/ Kevin L. Cornwell &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT></P>
<P style='font:10pt Times New Roman;margin:0'>Kevin L. Cornwell</P>
<P style='font:10pt Times New Roman;margin:0'>Chief Executive Officer</P>
<P style='font:10pt Times New Roman;margin:0'>March 25, 2022</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt CG Times;margin:0'><FONT style='font-family:Times New Roman'><I>A signed original of this written statement required by Section 906, or other document authenticating, acknowledging, or otherwise adopting the signature that appears in typed form within the electronic version of this written statement has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission or its staff upon request.</I></FONT></P>
</DIV>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-32.2
<SEQUENCE>9
<FILENAME>utmd_ex32z2.htm
<DESCRIPTION>EXHIBIT 32.2
<TEXT>
<HTML>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<HEAD>
</HEAD>
<BODY>
<DIV><P align=right style='font:10pt Times New Roman;margin:0'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Exhibit 32.2</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>CERTIFICATION PURSUANT TO</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>18 U.S.C. SECTION 1350,</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>AS ADOPTED PURSUANT TO</B></P>
<P align=center style='font:10pt Times New Roman;margin:0'><B>SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</B></P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>In connection with the Annual Report of Utah Medical Products, Inc. (the &#8220;Company&#8221;) on Form 10-K for the period ending December 31, 2021, as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), I, Brian L. Koopman, Principal Financial Officer of the Company, certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that, to the best of my knowledge and belief:</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:36pt'><KBD style='position:absolute;font:10pt CG Times;margin-left:-34.2pt'>(1)</KBD>the Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and &nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0;margin-left:36pt'><KBD style='position:absolute;font:10pt CG Times;margin-left:-34.2pt'>(2)</KBD>the information contained in the Report fairly presents, in all material respects, the financial condition and result of operations of the Company.&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'><FONT style='border-bottom:1px solid #000000'> &nbsp;&nbsp; &nbsp;/s/ Brian L. Koopman</FONT></P>
<P style='font:10pt Times New Roman;margin:0'>Brian L. Koopman</P>
<P style='font:10pt Times New Roman;margin:0'>Principal Financial Officer</P>
<P style='font:10pt Times New Roman;margin:0'>March 25, 2022</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt Times New Roman;margin:0'>&nbsp;</P>
<P style='font:10pt CG Times;margin:0'><FONT style='font-family:Times New Roman'><I>A signed original of this written statement required by Section 906, or other document authenticating, acknowledging, or otherwise adopting the signature that appears in typed form within the electronic version of this written statement has been provided to the Company and will be retained by the Company and furnished to the Securities and Exchange Commission or its staff upon request.</I></FONT></P>
</DIV>
</BODY>
</HTML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>10
<FILENAME>utmd-20211231_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase"
		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"
		xmlns:fil="http://www.utahmed.com/20211231"
		xmlns:link="http://www.xbrl.org/2003/linkbase"
		xmlns:xlink="http://www.w3.org/1999/xlink"
		xmlns:xbrldt="http://xbrl.org/2005/xbrldt"
		xmlns:xbrli="http://www.xbrl.org/2003/instance">
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent' xlink:label='us-gaap_AssetsCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_CashAndCashEquivalentsAtCarryingValue' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent' xlink:label='us-gaap_AccountsReceivableNetCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_AccountsReceivableNetCurrent' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_InventoryNet' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssetsCurrent' xlink:label='us-gaap_OtherAssetsCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AssetsCurrent' xlink:to='us-gaap_OtherAssetsCurrent' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets' xlink:label='us-gaap_Assets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Assets' xlink:to='us-gaap_AssetsCurrent' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Assets' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill' xlink:label='us-gaap_Goodwill'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Assets' xlink:to='us-gaap_Goodwill' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill' xlink:label='us-gaap_IntangibleAssetsNetExcludingGoodwill'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Assets' xlink:to='us-gaap_IntangibleAssetsNetExcludingGoodwill' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross' xlink:label='us-gaap_FiniteLivedIntangibleAssetsGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IntangibleAssetsNetExcludingGoodwill' xlink:to='us-gaap_FiniteLivedIntangibleAssetsGross' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IntangibleAssetsNetExcludingGoodwill' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent' xlink:label='us-gaap_LiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableCurrent' xlink:label='us-gaap_AccountsPayableCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesCurrent' xlink:to='us-gaap_AccountsPayableCurrent' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesCurrent' xlink:to='us-gaap_AccruedLiabilitiesCurrent' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities' xlink:label='us-gaap_Liabilities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Liabilities' xlink:to='us-gaap_LiabilitiesCurrent' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent' xlink:label='us-gaap_OperatingLeaseLiabilityNoncurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Liabilities' xlink:to='us-gaap_OperatingLeaseLiabilityNoncurrent' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent' xlink:label='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Liabilities' xlink:to='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets' xlink:label='us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Liabilities' xlink:to='us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet' xlink:label='us-gaap_DeferredIncomeTaxLiabilitiesNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_Liabilities' xlink:to='us-gaap_DeferredIncomeTaxLiabilitiesNet' use='optional' order='5.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity' xlink:label='us-gaap_LiabilitiesAndStockholdersEquity'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesAndStockholdersEquity' xlink:to='us-gaap_Liabilities' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity' xlink:label='us-gaap_StockholdersEquity'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_LiabilitiesAndStockholdersEquity' xlink:to='us-gaap_StockholdersEquity' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue' xlink:label='us-gaap_CommonStockValue'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_StockholdersEquity' xlink:to='us-gaap_CommonStockValue' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1' xlink:label='us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_StockholdersEquity' xlink:to='us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock' xlink:label='us-gaap_AdditionalPaidInCapitalCommonStock'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_StockholdersEquity' xlink:to='us-gaap_AdditionalPaidInCapitalCommonStock' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit' xlink:label='us-gaap_RetainedEarningsAccumulatedDeficit'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_StockholdersEquity' xlink:to='us-gaap_RetainedEarningsAccumulatedDeficit' use='optional' order='4.0' weight='1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit' xlink:label='us-gaap_GrossProfit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_GrossProfit' xlink:to='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold' xlink:label='us-gaap_CostOfGoodsAndServicesSold'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_GrossProfit' xlink:to='us-gaap_CostOfGoodsAndServicesSold' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss' xlink:label='us-gaap_OperatingIncomeLoss'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_OperatingIncomeLoss' xlink:to='us-gaap_GrossProfit' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SellingAndMarketingExpense' xlink:label='us-gaap_SellingAndMarketingExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_OperatingIncomeLoss' xlink:to='us-gaap_SellingAndMarketingExpense' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense' xlink:label='us-gaap_ResearchAndDevelopmentExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_OperatingIncomeLoss' xlink:to='us-gaap_ResearchAndDevelopmentExpense' use='optional' order='3.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense' xlink:label='us-gaap_GeneralAndAdministrativeExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_OperatingIncomeLoss' xlink:to='us-gaap_GeneralAndAdministrativeExpense' use='optional' order='4.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:to='us-gaap_OperatingIncomeLoss' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherInterestAndDividendIncome' xlink:label='us-gaap_OtherInterestAndDividendIncome'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:to='us-gaap_OtherInterestAndDividendIncome' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RoyaltyIncomeNonoperating' xlink:label='us-gaap_RoyaltyIncomeNonoperating'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:to='us-gaap_RoyaltyIncomeNonoperating' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense' xlink:label='us-gaap_OtherNonoperatingIncomeExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:to='us-gaap_OtherNonoperatingIncomeExpense' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss' xlink:label='us-gaap_ProfitLoss'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_ProfitLoss' xlink:to='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_ProfitLoss' xlink:to='us-gaap_IncomeTaxExpenseBenefit' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax' xlink:label='us-gaap_ComprehensiveIncomeNetOfTax'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_ComprehensiveIncomeNetOfTax' xlink:to='us-gaap_ProfitLoss' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' xlink:label='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_ComprehensiveIncomeNetOfTax' xlink:to='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' use='optional' order='2.0' weight='1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss' xlink:label='us-gaap_ProfitLoss'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_ProfitLoss' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Depreciation' xlink:label='us-gaap_Depreciation'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_Depreciation' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets' xlink:label='us-gaap_AmortizationOfIntangibleAssets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_AmortizationOfIntangibleAssets' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts' xlink:label='us-gaap_ProvisionForDoubtfulAccounts'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_ProvisionForDoubtfulAccounts' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense' xlink:label='us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense' use='optional' order='5.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets' xlink:label='us-gaap_GainLossOnDispositionOfAssets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_GainLossOnDispositionOfAssets' use='optional' order='6.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:label='us-gaap_DeferredIncomeTaxExpenseBenefit'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_DeferredIncomeTaxExpenseBenefit' use='optional' order='7.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation' xlink:label='us-gaap_ShareBasedCompensation'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_ShareBasedCompensation' use='optional' order='8.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' xlink:label='us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' use='optional' order='9.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:label='us-gaap_IncreaseDecreaseInAccountsReceivable'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInAccountsReceivable' use='optional' order='10.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOtherReceivables' xlink:label='us-gaap_IncreaseDecreaseInOtherReceivables'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInOtherReceivables' use='optional' order='11.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories' xlink:label='us-gaap_IncreaseDecreaseInInventories'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInInventories' use='optional' order='12.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' xlink:label='us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' use='optional' order='13.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable' xlink:label='us-gaap_IncreaseDecreaseInAccountsPayable'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInAccountsPayable' use='optional' order='14.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities' xlink:label='us-gaap_IncreaseDecreaseInAccruedLiabilities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_IncreaseDecreaseInAccruedLiabilities' use='optional' order='15.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' xlink:label='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' use='optional' order='16.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:label='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:to='us-gaap_NetCashProvidedByUsedInOperatingActivities' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:to='us-gaap_NetCashProvidedByUsedInInvestingActivities' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:to='us-gaap_NetCashProvidedByUsedInFinancingActivities' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents' xlink:label='us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:to='us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:label='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:to='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' use='optional' order='1.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireIntangibleAssets' xlink:label='us-gaap_PaymentsToAcquireIntangibleAssets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:to='us-gaap_PaymentsToAcquireIntangibleAssets' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock' xlink:label='us-gaap_ProceedsFromIssuanceOfCommonStock'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:to='us-gaap_ProceedsFromIssuanceOfCommonStock' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock' xlink:label='us-gaap_PaymentsForRepurchaseOfCommonStock'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:to='us-gaap_PaymentsForRepurchaseOfCommonStock' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividends' xlink:label='us-gaap_PaymentsOfDividends'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:to='us-gaap_PaymentsOfDividends' use='optional' order='3.0' weight='-1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:label='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:label='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:to='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' xlink:label='us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:to='us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' use='optional' order='2.0' weight='1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsAndOtherReceivablesNetCurrent' xlink:label='us-gaap_AccountsAndOtherReceivablesNetCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableGrossCurrent' xlink:label='us-gaap_AccountsReceivableGrossCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AccountsAndOtherReceivablesNetCurrent' xlink:to='us-gaap_AccountsReceivableGrossCurrent' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestReceivableAndOtherAssets' xlink:label='us-gaap_InterestReceivableAndOtherAssets'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AccountsAndOtherReceivablesNetCurrent' xlink:to='us-gaap_InterestReceivableAndOtherAssets' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:label='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AccountsAndOtherReceivablesNetCurrent' xlink:to='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' use='optional' order='3.0' weight='-1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves' xlink:label='us-gaap_InventoryFinishedGoodsNetOfReserves'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_InventoryNet' xlink:to='us-gaap_InventoryFinishedGoodsNetOfReserves' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryWorkInProcess' xlink:label='us-gaap_InventoryWorkInProcess'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_InventoryNet' xlink:to='us-gaap_InventoryWorkInProcess' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryRawMaterials' xlink:label='us-gaap_InventoryRawMaterials'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_InventoryNet' xlink:to='us-gaap_InventoryRawMaterials' use='optional' order='3.0' weight='1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross' xlink:label='us-gaap_FiniteLivedIntangibleAssetsGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedPatentsGross' xlink:label='us-gaap_FiniteLivedPatentsGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_FiniteLivedIntangibleAssetsGross' xlink:to='us-gaap_FiniteLivedPatentsGross' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedNoncompeteAgreementsGross' xlink:label='us-gaap_FiniteLivedNoncompeteAgreementsGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_FiniteLivedIntangibleAssetsGross' xlink:to='us-gaap_FiniteLivedNoncompeteAgreementsGross' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedTrademarksGross' xlink:label='us-gaap_FiniteLivedTrademarksGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_FiniteLivedIntangibleAssetsGross' xlink:to='us-gaap_FiniteLivedTrademarksGross' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedCustomerRelationshipsGross' xlink:label='us-gaap_FiniteLivedCustomerRelationshipsGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_FiniteLivedIntangibleAssetsGross' xlink:to='us-gaap_FiniteLivedCustomerRelationshipsGross' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherFiniteLivedIntangibleAssetsGross' xlink:label='us-gaap_OtherFiniteLivedIntangibleAssetsGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_FiniteLivedIntangibleAssetsGross' xlink:to='us-gaap_OtherFiniteLivedIntangibleAssetsGross' use='optional' order='5.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' xlink:label='fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_FiniteLivedIntangibleAssetsGross' xlink:to='fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' use='optional' order='6.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet' xlink:label='us-gaap_FiniteLivedIntangibleAssetsNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_FiniteLivedIntangibleAssetsNet' xlink:to='us-gaap_FiniteLivedIntangibleAssetsGross' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_FiniteLivedIntangibleAssetsNet' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' use='optional' order='2.0' weight='-1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent' xlink:label='us-gaap_AccruedIncomeTaxesCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AccruedLiabilitiesCurrent' xlink:to='us-gaap_AccruedIncomeTaxesCurrent' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:label='us-gaap_EmployeeRelatedLiabilitiesCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AccruedLiabilitiesCurrent' xlink:to='us-gaap_EmployeeRelatedLiabilitiesCurrent' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LitigationReserveCurrent' xlink:label='us-gaap_LitigationReserveCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AccruedLiabilitiesCurrent' xlink:to='us-gaap_LitigationReserveCurrent' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent' xlink:label='us-gaap_OtherAccruedLiabilitiesCurrent'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_AccruedLiabilitiesCurrent' xlink:to='us-gaap_OtherAccruedLiabilitiesCurrent' use='optional' order='4.0' weight='1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross' xlink:label='us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Land' xlink:label='us-gaap_Land'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_Land' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross' xlink:label='us-gaap_BuildingsAndImprovementsGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_BuildingsAndImprovementsGross' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross' xlink:label='us-gaap_MachineryAndEquipmentGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_MachineryAndEquipmentGross' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset' xlink:label='us-gaap_OperatingLeaseRightOfUseAsset'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_OperatingLeaseRightOfUseAsset' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConstructionInProgressGross' xlink:label='us-gaap_ConstructionInProgressGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_ConstructionInProgressGross' use='optional' order='5.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentNet' xlink:to='us-gaap_PropertyPlantAndEquipmentGross' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:label='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentNet' xlink:to='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' use='optional' order='2.0' weight='-1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross' xlink:label='us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Land' xlink:label='us-gaap_Land'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_Land' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross' xlink:label='us-gaap_BuildingsAndImprovementsGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_BuildingsAndImprovementsGross' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross' xlink:label='us-gaap_MachineryAndEquipmentGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_MachineryAndEquipmentGross' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset' xlink:label='us-gaap_OperatingLeaseRightOfUseAsset'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_OperatingLeaseRightOfUseAsset' use='optional' order='4.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConstructionInProgressGross' xlink:label='us-gaap_ConstructionInProgressGross'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='us-gaap_ConstructionInProgressGross' use='optional' order='5.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentNet' xlink:to='us-gaap_PropertyPlantAndEquipmentGross' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:label='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_PropertyPlantAndEquipmentNet' xlink:to='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' use='optional' order='2.0' weight='-1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities' xlink:label='us-gaap_DeferredTaxLiabilities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsInventory' xlink:label='us-gaap_DeferredTaxAssetsInventory'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_DeferredTaxLiabilities' xlink:to='us-gaap_DeferredTaxAssetsInventory' use='optional' order='1.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' xlink:label='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_DeferredTaxLiabilities' xlink:to='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' use='optional' order='2.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' xlink:label='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_DeferredTaxLiabilities' xlink:to='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' use='optional' order='3.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DeferredTaxLiabilitiesDepreciationAndAmortization' xlink:label='fil_DeferredTaxLiabilitiesDepreciationAndAmortization'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_DeferredTaxLiabilities' xlink:to='fil_DeferredTaxLiabilitiesDepreciationAndAmortization' use='optional' order='4.0' weight='1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit' xlink:label='us-gaap_CurrentIncomeTaxExpenseBenefit'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='us-gaap_CurrentIncomeTaxExpenseBenefit' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DeferredIncomeTaxExpense' xlink:label='fil_DeferredIncomeTaxExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='fil_DeferredIncomeTaxExpense' use='optional' order='2.0' weight='1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' xlink:label='us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes' xlink:label='us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes' use='optional' order='2.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential' xlink:label='us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential' use='optional' order='3.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities' xlink:label='us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities' use='optional' order='4.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' xlink:label='us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' use='optional' order='5.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' xlink:label='fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' use='optional' order='6.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_AdjustmentToDeferredTaxLiability' xlink:label='fil_AdjustmentToDeferredTaxLiability'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='fil_AdjustmentToDeferredTaxLiability' use='optional' order='7.0' weight='-1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments' xlink:label='us-gaap_IncomeTaxReconciliationOtherAdjustments'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='us-gaap_IncomeTaxReconciliationOtherAdjustments' use='optional' order='8.0' weight='1.0'/>
	</link:calculationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails"/>
	<link:calculationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:to='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' use='optional' order='1.0' weight='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign'/>
		<link:calculationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/summation-item' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:to='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' use='optional' order='2.0' weight='1.0'/>
	</link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>11
<FILENAME>utmd-20211231_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase"
		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"
		xmlns:fil="http://www.utahmed.com/20211231"
		xmlns:link="http://www.xbrl.org/2003/linkbase"
		xmlns:xlink="http://www.w3.org/1999/xlink"
		xmlns:xbrldt="http://xbrl.org/2005/xbrldt"
		xmlns:xbrli="http://www.xbrl.org/2003/instance">
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all"/>
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension"/>
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default"/>
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain"/>
	<link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:type="simple" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DocumentDocumentAndEntityInformation"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis' xlink:label='us-gaap_StatementEquityComponentsAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementEquityComponentsAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_EquityComponentDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_EquityComponentDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember' xlink:label='us-gaap_CommonStockMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_CommonStockMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember' xlink:label='us-gaap_AdditionalPaidInCapitalMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_AdditionalPaidInCapitalMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeMember' xlink:label='us-gaap_ComprehensiveIncomeMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_ComprehensiveIncomeMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember' xlink:label='us-gaap_RetainedEarningsMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_RetainedEarningsMember' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' xlink:label='us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding' xlink:label='us-gaap_SharesOutstanding'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_SharesOutstanding' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised' xlink:label='us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' xlink:label='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions' xlink:label='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' xlink:label='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation' xlink:label='us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockOptionPlanExpense' xlink:label='us-gaap_StockOptionPlanExpense'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockOptionPlanExpense' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue' xlink:label='us-gaap_StockRepurchasedAndRetiredDuringPeriodValue'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockRepurchasedAndRetiredDuringPeriodValue' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares' xlink:label='us-gaap_StockRepurchasedAndRetiredDuringPeriodShares'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockRepurchasedAndRetiredDuringPeriodShares' use='optional' order='10.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' xlink:label='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' use='optional' order='11.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsCommonStockCash' xlink:label='us-gaap_DividendsCommonStockCash'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_DividendsCommonStockCash' use='optional' order='12.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss' xlink:label='us-gaap_ProfitLoss'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ProfitLoss' use='optional' order='13.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipment" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipment"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipment"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebt" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote5LongTermDebt"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebt"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingencies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote6CommitmentsAndContingencies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingencies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxes" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxes"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxes"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8Options" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8Options"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8Options"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformation" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote9GeographicInformation"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformation"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformation" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote10GeographicLongLivedAssetsInformation"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformation"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegion" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegion"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegion"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitments" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote12ProductSaleAndPurchaseCommitments"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitments"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlans" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote13EmployeeBenefitPlans"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlans"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14Leases" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14Leases"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14Leases"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShare" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote16EarningsPerShare"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShare"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncements" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote17RecentAccountingPronouncements"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncements"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote18SubsequentEvents" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote18SubsequentEvents"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote18SubsequentEvents"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:label='us-gaap_PropertyPlantAndEquipmentByTypeAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_PropertyPlantAndEquipmentByTypeAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain' xlink:label='us-gaap_PropertyPlantAndEquipmentTypeDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:to='us-gaap_PropertyPlantAndEquipmentTypeDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain' xlink:label='us-gaap_PropertyPlantAndEquipmentTypeDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:to='us-gaap_PropertyPlantAndEquipmentTypeDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingAndBuildingImprovementsMember' xlink:label='us-gaap_BuildingAndBuildingImprovementsMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_PropertyPlantAndEquipmentTypeDomain' xlink:to='us-gaap_BuildingAndBuildingImprovementsMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquipmentMember' xlink:label='us-gaap_EquipmentMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_PropertyPlantAndEquipmentTypeDomain' xlink:to='us-gaap_EquipmentMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis' xlink:label='srt_RangeAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_RangeAxis' use='optional' order='2.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember' xlink:label='srt_RangeMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_RangeAxis' xlink:to='srt_RangeMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember' xlink:label='srt_RangeMember_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_RangeAxis' xlink:to='srt_RangeMember_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember' xlink:label='srt_MinimumMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_RangeMember' xlink:to='srt_MinimumMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember' xlink:label='srt_MaximumMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_RangeMember' xlink:to='srt_MaximumMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife' xlink:label='us-gaap_PropertyPlantAndEquipmentUsefulLife'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PropertyPlantAndEquipmentUsefulLife' use='optional' order='1.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis' xlink:label='srt_RangeAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_RangeAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember' xlink:label='srt_RangeMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_RangeAxis' xlink:to='srt_RangeMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember' xlink:label='srt_RangeMember_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_RangeAxis' xlink:to='srt_RangeMember_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember' xlink:label='srt_MinimumMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_RangeMember' xlink:to='srt_MinimumMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember' xlink:label='srt_MaximumMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_RangeMember' xlink:to='srt_MaximumMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionAxis' xlink:label='fil_DistributionRightsAcquisitionAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='fil_DistributionRightsAcquisitionAxis' use='optional' order='2.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionDomain' xlink:label='fil_DistributionRightsAcquisitionDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='fil_DistributionRightsAcquisitionAxis' xlink:to='fil_DistributionRightsAcquisitionDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionDomain' xlink:label='fil_DistributionRightsAcquisitionDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='fil_DistributionRightsAcquisitionAxis' xlink:to='fil_DistributionRightsAcquisitionDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CoopersurgicalIncMember' xlink:label='fil_CoopersurgicalIncMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='fil_DistributionRightsAcquisitionDomain' xlink:to='fil_CoopersurgicalIncMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife' xlink:label='us-gaap_FiniteLivedIntangibleAssetUsefulLife'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetUsefulLife' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD' xlink:label='fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD' xlink:label='fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1' xlink:label='us-gaap_FinitelivedIntangibleAssetsAcquired1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FinitelivedIntangibleAssetsAcquired1' use='optional' order='9.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_U.S.AndCanadaMember' xlink:label='fil_U.S.AndCanadaMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_SegmentGeographicalDomain' xlink:to='fil_U.S.AndCanadaMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EnglandAndAustraliaMember' xlink:label='fil_EnglandAndAustraliaMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_SegmentGeographicalDomain' xlink:to='fil_EnglandAndAustraliaMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/country/2021/country-2021.xsd#country_IE' xlink:label='country_IE'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_SegmentGeographicalDomain' xlink:to='country_IE' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Land' xlink:label='us-gaap_Land'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_Land' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross' xlink:label='us-gaap_BuildingsAndImprovementsGross'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_BuildingsAndImprovementsGross' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross' xlink:label='us-gaap_MachineryAndEquipmentGross'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_MachineryAndEquipmentGross' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset' xlink:label='us-gaap_OperatingLeaseRightOfUseAsset'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_OperatingLeaseRightOfUseAsset' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConstructionInProgressGross' xlink:label='us-gaap_ConstructionInProgressGross'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ConstructionInProgressGross' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross' xlink:label='us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PropertyPlantAndEquipmentGross' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:label='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' use='optional' order='8.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebtDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote5LongTermDebtDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebtDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingenciesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote6CommitmentsAndContingenciesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingenciesDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis' xlink:label='us-gaap_StatementEquityComponentsAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementEquityComponentsAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_EquityComponentDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_EquityComponentDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember' xlink:label='us-gaap_CommonStockMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_EquityComponentDomain' xlink:to='us-gaap_CommonStockMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareGranted' xlink:label='fil_PriceRangePerShareGranted'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareGranted' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareExpired' xlink:label='fil_PriceRangePerShareExpired'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareExpired' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' xlink:label='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareExercised' xlink:label='fil_PriceRangePerShareExercised'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareExercised' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareOutstanding' xlink:label='fil_PriceRangePerShareOutstanding'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareOutstanding' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareTotalExercisable' xlink:label='fil_PriceRangePerShareTotalExercisable'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareTotalExercisable' use='optional' order='10.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementScenarioAxis' xlink:label='srt_StatementScenarioAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementScenarioAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScenarioUnspecifiedDomain' xlink:label='srt_ScenarioUnspecifiedDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_StatementScenarioAxis' xlink:to='srt_ScenarioUnspecifiedDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScenarioUnspecifiedDomain' xlink:label='srt_ScenarioUnspecifiedDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_StatementScenarioAxis' xlink:to='srt_ScenarioUnspecifiedDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_Range1Member' xlink:label='fil_Range1Member'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ScenarioUnspecifiedDomain' xlink:to='fil_Range1Member' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_Range2Member' xlink:label='fil_Range2Member'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ScenarioUnspecifiedDomain' xlink:to='fil_Range2Member' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_WeightedAverageRemainingContractualLifeYears' xlink:label='fil_WeightedAverageRemainingContractualLifeYears'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_WeightedAverageRemainingContractualLifeYears' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' xlink:label='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' xlink:label='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' use='optional' order='7.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GlobalMember' xlink:label='fil_GlobalMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_SegmentGeographicalDomain' xlink:to='fil_GlobalMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_ProductOrServiceAxis' use='optional' order='2.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ObstetricsMember' xlink:label='fil_ObstetricsMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_ObstetricsMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GynecologyElectrosurgeryUrologyMember' xlink:label='fil_GynecologyElectrosurgeryUrologyMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_GynecologyElectrosurgeryUrologyMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_NeonatalMember' xlink:label='fil_NeonatalMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_NeonatalMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_BloodPressureMonitoringandAccessoriesMember' xlink:label='fil_BloodPressureMonitoringandAccessoriesMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_BloodPressureMonitoringandAccessoriesMember' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' use='optional' order='1.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_OusMember' xlink:label='fil_OusMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_SegmentGeographicalDomain' xlink:to='fil_OusMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='srt_ProductOrServiceAxis' use='optional' order='2.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ObstetricsMember' xlink:label='fil_ObstetricsMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_ObstetricsMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GynecologyElectrosurgeryUrologyMember' xlink:label='fil_GynecologyElectrosurgeryUrologyMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_GynecologyElectrosurgeryUrologyMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_NeonatalMember' xlink:label='fil_NeonatalMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_NeonatalMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_BloodPressureMonitoringandAccessoriesMember' xlink:label='fil_BloodPressureMonitoringandAccessoriesMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='srt_ProductsAndServicesDomain' xlink:to='fil_BloodPressureMonitoringandAccessoriesMember' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' use='optional' order='1.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlansDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote13EmployeeBenefitPlansDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlansDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"/>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionAxis' xlink:label='fil_DistributionRightsAcquisitionAxis'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/hypercube-dimension' xlink:from='us-gaap_StatementTable' xlink:to='fil_DistributionRightsAcquisitionAxis' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionDomain' xlink:label='fil_DistributionRightsAcquisitionDomain'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-domain' xlink:from='fil_DistributionRightsAcquisitionAxis' xlink:to='fil_DistributionRightsAcquisitionDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionDomain' xlink:label='fil_DistributionRightsAcquisitionDomain_1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/dimension-default' xlink:from='fil_DistributionRightsAcquisitionAxis' xlink:to='fil_DistributionRightsAcquisitionDomain_1' use='optional' order='1.0' xbrldt:contextElement='segment'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CoopersurgicalIncMember' xlink:label='fil_CoopersurgicalIncMember'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='fil_DistributionRightsAcquisitionDomain' xlink:to='fil_CoopersurgicalIncMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/all' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StatementTable' order='0.5' xbrldt:closed='true' xbrldt:contextElement='segment' use='optional'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1' xlink:label='us-gaap_FinitelivedIntangibleAssetsAcquired1'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FinitelivedIntangibleAssetsAcquired1' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' xlink:label='fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem'/>
		<link:definitionArc xlink:type='arc' xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' use='optional' order='2.0'/>
	</link:definitionLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails"/>
	<link:definitionLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails"/>
	<link:roleRef roleURI='http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists' xlink:type='simple' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd#eedm'/>
	<link:definitionLink xlink:role='http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists' xlink:type='extended'>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrentAbstract' xlink:label='us-gaap_AccountsPayableAndAccruedLiabilitiesCurrentAbstract'/>
		<link:definitionArc xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_AccountsPayableAndAccruedLiabilitiesCurrentAbstract' xlink:to='us-gaap_AccruedLiabilitiesCurrent' xlink:type='arc' order='0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract' xlink:label='us-gaap_LiabilitiesCurrentAbstract'/>
		<link:definitionArc xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_LiabilitiesCurrentAbstract' xlink:to='us-gaap_AccruedLiabilitiesCurrent' xlink:type='arc' order='0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAbstract' xlink:label='us-gaap_LiabilitiesAbstract'/>
		<link:definitionArc xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_LiabilitiesAbstract' xlink:to='us-gaap_AccruedLiabilitiesCurrent' xlink:type='arc' order='0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:label='us-gaap_LiabilitiesAndStockholdersEquityAbstract'/>
		<link:definitionArc xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:to='us-gaap_AccruedLiabilitiesCurrent' xlink:type='arc' order='0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:definitionArc xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_AccruedLiabilitiesCurrent' xlink:type='arc' order='0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNetAbstract' xlink:label='us-gaap_PropertyPlantAndEquipmentNetAbstract'/>
		<link:definitionArc xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_PropertyPlantAndEquipmentNetAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' xlink:type='arc' order='0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsNoncurrentAbstract' xlink:label='us-gaap_AssetsNoncurrentAbstract'/>
		<link:definitionArc xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_AssetsNoncurrentAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' xlink:type='arc' order='0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract' xlink:label='us-gaap_AssetsAbstract'/>
		<link:definitionArc xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_AssetsAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' xlink:type='arc' order='0'/>
		<link:definitionArc xlink:arcrole='http://xbrl.org/int/dim/arcrole/domain-member' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' xlink:type='arc' order='0'/>
	</link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>12
<FILENAME>utmd-20211231_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABELS LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase"
		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"
		xmlns:fil="http://www.utahmed.com/20211231"
		xmlns:link="http://www.xbrl.org/2003/linkbase"
		xmlns:xlink="http://www.w3.org/1999/xlink"
		xmlns:xbrldt="http://xbrl.org/2005/xbrldt"
		xmlns:xbrli="http://www.xbrl.org/2003/instance">
	<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" roleURI="http://www.xbrl.org/2009/role/netLabel"/>
	<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" roleURI="http://www.xbrl.org/2009/role/negatedLabel"/>
	<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel"/>
	<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel"/>
	<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel"/>
	<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel"/>
	<roleRef xlink:type="simple" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" roleURI="http://www.xbrl.org/2009/role/negatedNetLabel"/>
	<link:labelLink xlink:type="extended" xlink:role="http://www.xbrl.org/2003/role/link">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee, Operating Lease, Liability, to be Paid</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue' xlink:to='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_ProductsAndServicesDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Product and Service</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_ProductsAndServicesDomain' xlink:to='lab_srt_ProductsAndServicesDomain'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CompanySalesInTheUnitedStates' xlink:label='fil_CompanySalesInTheUnitedStates'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_CompanySalesInTheUnitedStates' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Company Sales in the United States</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_CompanySalesInTheUnitedStates' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Company Sales in the United States, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_CompanySalesInTheUnitedStates' xlink:to='lab_fil_CompanySalesInTheUnitedStates'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears' xlink:label='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears' xlink:to='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProductWarrantyAccrual' xlink:label='us-gaap_ProductWarrantyAccrual'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ProductWarrantyAccrual' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Standard and Extended Product Warranty Accrual</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ProductWarrantyAccrual' xlink:to='lab_us-gaap_ProductWarrantyAccrual'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_StatementGeographicalAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Geographical [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_StatementGeographicalAxis' xlink:to='lab_srt_StatementGeographicalAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:label='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:to='lab_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross' xlink:label='us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Property, Plant and Equipment, Gross</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentGross' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Property, Plant and Equipment, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentGross' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedTrademarksGross' xlink:label='us-gaap_FiniteLivedTrademarksGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedTrademarksGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Trademarks, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedTrademarksGross' xlink:to='lab_us-gaap_FiniteLivedTrademarksGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:label='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts Receivable, Allowance for Credit Loss, Current</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Accounts Receivable, Allowance for Credit Loss, Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:to='lab_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock' xlink:label='us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Translation of Foreign Currencies</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock' xlink:to='lab_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock' xlink:label='us-gaap_PropertyPlantAndEquipmentPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Property and Equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentPolicyTextBlock' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock' xlink:label='us-gaap_IncomeTaxDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 7 - Income Taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxDisclosureTextBlock' xlink:to='lab_us-gaap_IncomeTaxDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' xlink:label='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-term repatriation tax payable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' xlink:to='lab_us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Depreciation' xlink:label='us-gaap_Depreciation'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Depreciation' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Depreciation</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Depreciation' xlink:to='lab_us-gaap_Depreciation'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesIssued' xlink:label='us-gaap_CommonStockSharesIssued'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockSharesIssued' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock, Shares, Issued</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockSharesIssued' xlink:to='lab_us-gaap_CommonStockSharesIssued'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Cash</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:role='http://www.xbrl.org/2003/role/periodStartLabel' xml:lang='en-US'>Cash at beginning of year</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:role='http://www.xbrl.org/2003/role/periodEndLabel' xml:lang='en-US'>Cash at end of year</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:to='lab_us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalPeriodFocus' xlink:label='dei_DocumentFiscalPeriodFocus'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentFiscalPeriodFocus' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Fiscal Period Focus</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentFiscalPeriodFocus' xlink:to='lab_dei_DocumentFiscalPeriodFocus'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityInteractiveDataCurrent' xlink:label='dei_EntityInteractiveDataCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityInteractiveDataCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Interactive Data Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityInteractiveDataCurrent' xlink:to='lab_dei_EntityInteractiveDataCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCurrentReportingStatus' xlink:label='dei_EntityCurrentReportingStatus'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityCurrentReportingStatus' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Current Reporting Status</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityCurrentReportingStatus' xlink:to='lab_dei_EntityCurrentReportingStatus'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCentralIndexKey' xlink:label='dei_EntityCentralIndexKey'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityCentralIndexKey' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Central Index Key</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityCentralIndexKey' xlink:to='lab_dei_EntityCentralIndexKey'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee, Operating Lease, Liability, to be Paid, Year Three</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree' xlink:to='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Payments</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareOutstanding' xlink:label='fil_PriceRangePerShareOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Price Range Per Share Outstanding</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareOutstanding' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the description of Price Range Per Share Outstanding, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_PriceRangePerShareOutstanding' xlink:to='lab_fil_PriceRangePerShareOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition' xlink:label='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years Period For Recognition</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years Period For Recognition, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition' xlink:to='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_AdjustmentToDeferredTaxLiability' xlink:label='fil_AdjustmentToDeferredTaxLiability'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_AdjustmentToDeferredTaxLiability' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Adjustment To Deferred Tax Liability</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_AdjustmentToDeferredTaxLiability' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Adjustment To Deferred Tax Liability</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_AdjustmentToDeferredTaxLiability' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Adjustment To Deferred Tax Liability, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_AdjustmentToDeferredTaxLiability' xlink:to='lab_fil_AdjustmentToDeferredTaxLiability'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/country/2021/country-2021.xsd#country_IE' xlink:label='country_IE'/>
		<link:label xlink:type='resource' xlink:label='lab_country_IE' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>IRELAND</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='country_IE' xlink:to='lab_country_IE'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EnglandAndAustraliaMember' xlink:label='fil_EnglandAndAustraliaMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_EnglandAndAustraliaMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>England and Australia</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_EnglandAndAustraliaMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the England and Australia, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_EnglandAndAustraliaMember' xlink:to='lab_fil_EnglandAndAustraliaMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross' xlink:label='us-gaap_MachineryAndEquipmentGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_MachineryAndEquipmentGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Machinery and Equipment, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_MachineryAndEquipmentGross' xlink:to='lab_us-gaap_MachineryAndEquipmentGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet' xlink:label='us-gaap_FiniteLivedIntangibleAssetsNet'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsNet' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Intangible Assets, Net</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsNet' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Finite-Lived Intangible Assets, Net</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedIntangibleAssetsNet' xlink:to='lab_us-gaap_FiniteLivedIntangibleAssetsNet'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryWorkInProcess' xlink:label='us-gaap_InventoryWorkInProcess'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryWorkInProcess' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventory, Work in Process, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryWorkInProcess' xlink:to='lab_us-gaap_InventoryWorkInProcess'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' xlink:label='us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Weighted Average Number Diluted Shares Outstanding Adjustment</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Dilutive effect of stock options</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' xlink:to='lab_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1' xlink:label='us-gaap_FinitelivedIntangibleAssetsAcquired1'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FinitelivedIntangibleAssetsAcquired1' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-lived Intangible Assets Acquired</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FinitelivedIntangibleAssetsAcquired1' xlink:to='lab_us-gaap_FinitelivedIntangibleAssetsAcquired1'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain' xlink:label='us-gaap_PropertyPlantAndEquipmentTypeDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentTypeDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-Lived Tangible Asset</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentTypeDomain' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentTypeDomain'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee, Operating Lease, Liability, Maturity</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock' xlink:to='lab_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock' xlink:label='fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Reconciliation of operating lease liabilities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Reconciliation of operating lease liabilities/ payments to operating lease liabilities.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock' xlink:to='lab_fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock' xlink:label='fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule Of Long-Lived Assets By Geographic Area</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Schedule Of Long-Lived Assets By Geographic Area, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock' xlink:to='lab_fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock' xlink:label='us-gaap_QuarterlyFinancialInformationTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_QuarterlyFinancialInformationTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 3 - Quarterly Results of Operations (Unaudited)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_QuarterlyFinancialInformationTextBlock' xlink:to='lab_us-gaap_QuarterlyFinancialInformationTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestPaid' xlink:label='us-gaap_InterestPaid'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InterestPaid' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash paid during the period for interest</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InterestPaid' xlink:to='lab_us-gaap_InterestPaid'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable' xlink:label='us-gaap_IncreaseDecreaseInAccountsPayable'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInAccountsPayable' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts payable {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInAccountsPayable' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Accounts payable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInAccountsPayable' xlink:to='lab_us-gaap_IncreaseDecreaseInAccountsPayable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockOptionPlanExpense' xlink:label='us-gaap_StockOptionPlanExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockOptionPlanExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Stock option compensation expense</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockOptionPlanExpense' xlink:to='lab_us-gaap_StockOptionPlanExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss' xlink:label='us-gaap_ProfitLoss'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ProfitLoss' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net income</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ProfitLoss' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net income</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ProfitLoss' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Net Income</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ProfitLoss' xlink:to='lab_us-gaap_ProfitLoss'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss' xlink:label='us-gaap_OperatingIncomeLoss'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingIncomeLoss' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Operating income</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingIncomeLoss' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Operating income</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingIncomeLoss' xlink:to='lab_us-gaap_OperatingIncomeLoss'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold' xlink:label='us-gaap_CostOfGoodsAndServicesSold'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CostOfGoodsAndServicesSold' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cost of goods sold</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CostOfGoodsAndServicesSold' xlink:to='lab_us-gaap_CostOfGoodsAndServicesSold'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare' xlink:label='us-gaap_CommonStockParOrStatedValuePerShare'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockParOrStatedValuePerShare' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock, Par or Stated Value Per Share</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockParOrStatedValuePerShare' xlink:to='lab_us-gaap_CommonStockParOrStatedValuePerShare'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingencies' xlink:label='us-gaap_CommitmentsAndContingencies'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommitmentsAndContingencies' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Commitments and contingencies (notes 6 and 12)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommitmentsAndContingencies' xlink:to='lab_us-gaap_CommitmentsAndContingencies'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_IcfrAuditorAttestationFlag' xlink:label='dei_IcfrAuditorAttestationFlag'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_IcfrAuditorAttestationFlag' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>ICFR Auditor Attestation Flag</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_IcfrAuditorAttestationFlag' xlink:to='lab_dei_IcfrAuditorAttestationFlag'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AmendmentDescription' xlink:label='dei_AmendmentDescription'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_AmendmentDescription' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Amendment Description</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_AmendmentDescription' xlink:to='lab_dei_AmendmentDescription'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityEmergingGrowthCompany' xlink:label='dei_EntityEmergingGrowthCompany'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityEmergingGrowthCompany' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Emerging Growth Company</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityEmergingGrowthCompany' xlink:to='lab_dei_EntityEmergingGrowthCompany'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount' xlink:label='us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Defined Contribution Plan, Employer Discretionary Contribution Amount</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount' xlink:to='lab_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractualObligation' xlink:label='us-gaap_ContractualObligation'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ContractualObligation' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Contractual Obligation</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ContractualObligation' xlink:to='lab_us-gaap_ContractualObligation'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_BloodPressureMonitoringandAccessoriesMember' xlink:label='fil_BloodPressureMonitoringandAccessoriesMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_BloodPressureMonitoringandAccessoriesMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Blood Pressure Monitoring and Accessories</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_BloodPressureMonitoringandAccessoriesMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Blood Pressure Monitoring and Accessories, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_BloodPressureMonitoringandAccessoriesMember' xlink:to='lab_fil_BloodPressureMonitoringandAccessoriesMember'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CompanySalesOther' xlink:label='fil_CompanySalesOther'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_CompanySalesOther' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Company Sales Other</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_CompanySalesOther' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Company Sales Other, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_CompanySalesOther' xlink:to='lab_fil_CompanySalesOther'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareExpired' xlink:label='fil_PriceRangePerShareExpired'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareExpired' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Price Range Per Share Expired</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareExpired' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the description of Price Range Per Share Expired, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_PriceRangePerShareExpired' xlink:to='lab_fil_PriceRangePerShareExpired'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareGranted' xlink:label='fil_PriceRangePerShareGranted'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareGranted' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Price Range Per Share Granted</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareGranted' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the description of Price Range Per Share Granted, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_PriceRangePerShareGranted' xlink:to='lab_fil_PriceRangePerShareGranted'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent' xlink:label='us-gaap_AccruedIncomeTaxesCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccruedIncomeTaxesCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accrued Income Taxes, Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccruedIncomeTaxesCurrent' xlink:to='lab_us-gaap_AccruedIncomeTaxesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss' xlink:label='us-gaap_GoodwillImpairmentLoss'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GoodwillImpairmentLoss' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Subtractions as a result of impairment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_GoodwillImpairmentLoss' xlink:to='lab_us-gaap_GoodwillImpairmentLoss'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ScheduleOfGeographicInformationTextBlock' xlink:label='fil_ScheduleOfGeographicInformationTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_ScheduleOfGeographicInformationTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule Of Geographic Information</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_ScheduleOfGeographicInformationTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Schedule Of Geographic Information, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_ScheduleOfGeographicInformationTextBlock' xlink:to='lab_fil_ScheduleOfGeographicInformationTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock' xlink:label='us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Deferred Tax Assets and Liabilities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock' xlink:label='us-gaap_ConsolidationPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ConsolidationPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Principles of Consolidation</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ConsolidationPolicyTextBlock' xlink:to='lab_us-gaap_ConsolidationPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash flows from investing activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:to='lab_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:label='us-gaap_IncreaseDecreaseInAccountsReceivable'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts receivable</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Accounts receivable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:to='lab_us-gaap_IncreaseDecreaseInAccountsReceivable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RoyaltyIncomeNonoperating' xlink:label='us-gaap_RoyaltyIncomeNonoperating'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RoyaltyIncomeNonoperating' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Royalty income (note 12)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RoyaltyIncomeNonoperating' xlink:to='lab_us-gaap_RoyaltyIncomeNonoperating'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1' xlink:label='us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accumulated other comprehensive loss</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1' xlink:to='lab_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityAbstract' xlink:label='us-gaap_StockholdersEquityAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquityAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Stockholders&apos; equity</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockholdersEquityAbstract' xlink:to='lab_us-gaap_StockholdersEquityAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorFirmId' xlink:label='dei_AuditorFirmId'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_AuditorFirmId' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Auditor Firm ID</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_AuditorFirmId' xlink:to='lab_dei_AuditorFirmId'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AmendmentFlag' xlink:label='dei_AmendmentFlag'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_AmendmentFlag' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Amendment Flag</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_AmendmentFlag' xlink:to='lab_dei_AmendmentFlag'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityIncorporationStateCountryCode' xlink:label='dei_EntityIncorporationStateCountryCode'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityIncorporationStateCountryCode' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Incorporation, State or Country Code</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityIncorporationStateCountryCode' xlink:to='lab_dei_EntityIncorporationStateCountryCode'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentType' xlink:label='dei_DocumentType'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentType' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Type</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentType' xlink:to='lab_dei_DocumentType'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee, Operating Lease, Liability, to be Paid, after Year Five</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive' xlink:to='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent' xlink:label='us-gaap_OperatingLeaseLiabilityCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseLiabilityCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Operating Lease, Liability, Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseLiabilityCurrent' xlink:to='lab_us-gaap_OperatingLeaseLiabilityCurrent'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI' xlink:label='fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee Operating Lease For Parking Lot Adjustment To Lease Payments Required Every Five Years Based On Change In CPI</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Lessee Operating Lease For Parking Lot Adjustment To Lease Payments Required Every Five Years Based On Change In CPI, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI' xlink:to='lab_fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInIreland' xlink:label='fil_LongLivedAssetsInIreland'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInIreland' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-lived assets in Ireland</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInIreland' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Long-lived assets in Ireland, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_LongLivedAssetsInIreland' xlink:to='lab_fil_LongLivedAssetsInIreland'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedNoncompeteAgreementsGross' xlink:label='us-gaap_FiniteLivedNoncompeteAgreementsGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedNoncompeteAgreementsGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Noncompete Agreements, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedNoncompeteAgreementsGross' xlink:to='lab_us-gaap_FiniteLivedNoncompeteAgreementsGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableGrossCurrent' xlink:label='us-gaap_AccountsReceivableGrossCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccountsReceivableGrossCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts Receivable, before Allowance for Credit Loss, Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccountsReceivableGrossCurrent' xlink:to='lab_us-gaap_AccountsReceivableGrossCurrent'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock' xlink:label='fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule Of Global Revenues By Product Category</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Schedule Of Global Revenues By Product Category, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock' xlink:to='lab_fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GeographicLongLivedAssetsInformationTextBlock' xlink:label='fil_GeographicLongLivedAssetsInformationTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_GeographicLongLivedAssetsInformationTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 10 - Geographic Long-Lived Assets Information</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_GeographicLongLivedAssetsInformationTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Note 10 - Geographic Long-Lived Assets Information, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_GeographicLongLivedAssetsInformationTextBlock' xlink:to='lab_fil_GeographicLongLivedAssetsInformationTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax' xlink:label='us-gaap_ComprehensiveIncomeNetOfTax'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ComprehensiveIncomeNetOfTax' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total comprehensive income</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ComprehensiveIncomeNetOfTax' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total comprehensive income</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ComprehensiveIncomeNetOfTax' xlink:to='lab_us-gaap_ComprehensiveIncomeNetOfTax'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' xlink:label='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Foreign currency translation adjustment</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Foreign currency translation net of taxes of $0 in all periods</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' xlink:to='lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxExpenseBenefit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Provision for income taxes (note 7)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxExpenseBenefit' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Provision for income taxes (note 7)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxExpenseBenefit' xlink:to='lab_us-gaap_IncomeTaxExpenseBenefit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_Security12bTitle' xlink:label='dei_Security12bTitle'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_Security12bTitle' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Title of 12(b) Security</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_Security12bTitle' xlink:to='lab_dei_Security12bTitle'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressStateOrProvince' xlink:label='dei_EntityAddressStateOrProvince'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityAddressStateOrProvince' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Address, State or Province</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityAddressStateOrProvince' xlink:to='lab_dei_EntityAddressStateOrProvince'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntitySmallBusiness' xlink:label='dei_EntitySmallBusiness'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntitySmallBusiness' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Small Business</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntitySmallBusiness' xlink:to='lab_dei_EntitySmallBusiness'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ObstetricsMember' xlink:label='fil_ObstetricsMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_ObstetricsMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Obstetrics</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_ObstetricsMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Obstetrics, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_ObstetricsMember' xlink:to='lab_fil_ObstetricsMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Payment Arrangement, Option, Exercise Price Range, Shares Outstanding</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' xlink:to='lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DeferredTaxLiabilitiesDepreciationAndAmortization' xlink:label='fil_DeferredTaxLiabilitiesDepreciationAndAmortization'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_DeferredTaxLiabilitiesDepreciationAndAmortization' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred Tax Liabilities Depreciation and Amortization</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_DeferredTaxLiabilitiesDepreciationAndAmortization' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Deferred Tax Liabilities Depreciation and Amortization</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_DeferredTaxLiabilitiesDepreciationAndAmortization' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Deferred Tax Liabilities Depreciation and Amortization, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_DeferredTaxLiabilitiesDepreciationAndAmortization' xlink:to='lab_fil_DeferredTaxLiabilitiesDepreciationAndAmortization'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList' xlink:label='us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Operating Lease, Right-of-Use Asset, Statement of Financial Position</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList' xlink:to='lab_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset' xlink:label='us-gaap_OperatingLeaseRightOfUseAsset'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseRightOfUseAsset' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Right-of-Use Asset</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseRightOfUseAsset' xlink:to='lab_us-gaap_OperatingLeaseRightOfUseAsset'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherFiniteLivedIntangibleAssetsGross' xlink:label='us-gaap_OtherFiniteLivedIntangibleAssetsGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherFiniteLivedIntangibleAssetsGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other Finite-Lived Intangible Assets, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherFiniteLivedIntangibleAssetsGross' xlink:to='lab_us-gaap_OtherFiniteLivedIntangibleAssetsGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryRawMaterials' xlink:label='us-gaap_InventoryRawMaterials'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryRawMaterials' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventory, Raw Materials, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryRawMaterials' xlink:to='lab_us-gaap_InventoryRawMaterials'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense' xlink:label='us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Unrecognized Tax Benefits, Income Tax Penalties and Interest Expense</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense' xlink:to='lab_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Intangible Asset, Expected Amortization, Year Five</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive' xlink:to='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:label='us-gaap_PropertyPlantAndEquipmentByTypeAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-Lived Tangible Asset [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentByTypeAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock' xlink:label='us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Quarterly Financial Information</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock' xlink:label='us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 8 - Options</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock' xlink:to='lab_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:label='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net increase (decrease) in cash and cash equivalents</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net increase (decrease) in cash and cash equivalents</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:to='lab_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net cash (used in) investing activities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net cash (used in) investing activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:to='lab_us-gaap_NetCashProvidedByUsedInInvestingActivities'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions' xlink:label='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock received and retired upon exercise of stock options</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Common stock received and retired upon exercise of stock options, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions' xlink:to='lab_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis' xlink:label='us-gaap_StatementEquityComponentsAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementEquityComponentsAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Equity Components [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='lab_us-gaap_StatementEquityComponentsAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract' xlink:label='us-gaap_LiabilitiesCurrentAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesCurrentAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Current liabilities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LiabilitiesCurrentAbstract' xlink:to='lab_us-gaap_LiabilitiesCurrentAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill' xlink:label='us-gaap_IntangibleAssetsNetExcludingGoodwill'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IntangibleAssetsNetExcludingGoodwill' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other intangible assets, net (note 2)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IntangibleAssetsNetExcludingGoodwill' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Other intangible assets, net (note 2)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IntangibleAssetsNetExcludingGoodwill' xlink:to='lab_us-gaap_IntangibleAssetsNetExcludingGoodwill'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent' xlink:label='us-gaap_AccountsReceivableNetCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccountsReceivableNetCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts &amp; other receivables, net (note 2)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccountsReceivableNetCurrent' xlink:to='lab_us-gaap_AccountsReceivableNetCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract' xlink:label='us-gaap_AssetsAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AssetsAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>ASSETS</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AssetsAbstract' xlink:to='lab_us-gaap_AssetsAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentsIncorporatedByReferenceTextBlock' xlink:label='dei_DocumentsIncorporatedByReferenceTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentsIncorporatedByReferenceTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Documents Incorporated by Reference</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentsIncorporatedByReferenceTextBlock' xlink:to='lab_dei_DocumentsIncorporatedByReferenceTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentTransitionReport' xlink:label='dei_DocumentTransitionReport'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentTransitionReport' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Transition Report</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentTransitionReport' xlink:to='lab_dei_DocumentTransitionReport'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Lessee, Operating Lease, Liability, Undiscounted Excess Amount</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount' xlink:to='lab_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_Range1Member' xlink:label='fil_Range1Member'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_Range1Member' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Range 1</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_Range1Member' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Range 1, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_Range1Member' xlink:to='lab_fil_Range1Member'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementScenarioAxis' xlink:label='srt_StatementScenarioAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_StatementScenarioAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Scenario [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_StatementScenarioAxis' xlink:to='lab_srt_StatementScenarioAxis'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareTotalExercisable' xlink:label='fil_PriceRangePerShareTotalExercisable'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareTotalExercisable' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Price Range Per Share Total Exercisable</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareTotalExercisable' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the description of Price Range Per Share Total Exercisable, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_PriceRangePerShareTotalExercisable' xlink:to='lab_fil_PriceRangePerShareTotalExercisable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities' xlink:label='us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Effective Income Tax Rate Reconciliation, Deduction, Qualified Production Activity, Amount</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Effective Income Tax Rate Reconciliation, Deduction, Qualified Production Activity, Amount</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities' xlink:to='lab_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LitigationReserveCurrent' xlink:label='us-gaap_LitigationReserveCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LitigationReserveCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Estimated Litigation Liability, Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LitigationReserveCurrent' xlink:to='lab_us-gaap_LitigationReserveCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:label='us-gaap_EmployeeRelatedLiabilitiesCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Employee-related Liabilities, Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:to='lab_us-gaap_EmployeeRelatedLiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember' xlink:label='srt_MinimumMember'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_MinimumMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Minimum</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_MinimumMember' xlink:to='lab_srt_MinimumMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock' xlink:label='us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Finite-Lived Intangible Assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock' xlink:label='us-gaap_ConcentrationRiskDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ConcentrationRiskDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Concentration of Credit Risk</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ConcentrationRiskDisclosureTextBlock' xlink:to='lab_us-gaap_ConcentrationRiskDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_RevenuesbyproductcategoryandregionTextBlock' xlink:label='fil_RevenuesbyproductcategoryandregionTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_RevenuesbyproductcategoryandregionTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 11 - Revenues By Product Category And Region</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_RevenuesbyproductcategoryandregionTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Revenues By Product Category And Region, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_RevenuesbyproductcategoryandregionTextBlock' xlink:to='lab_fil_RevenuesbyproductcategoryandregionTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' xlink:label='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock received and retired upon exercise of stock options, shares</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Common stock received and retired upon exercise of stock options, shares (number of shares), during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' xlink:to='lab_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember' xlink:label='us-gaap_AdditionalPaidInCapitalMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AdditionalPaidInCapitalMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Additional Paid-In Capitol</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AdditionalPaidInCapitalMember' xlink:to='lab_us-gaap_AdditionalPaidInCapitalMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding' xlink:label='us-gaap_CommonStockSharesOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock, Shares, Outstanding</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockSharesOutstanding' xlink:to='lab_us-gaap_CommonStockSharesOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other intangible assets - accumulated amortization</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Other intangible assets - accumulated amortization</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' xlink:to='lab_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent' xlink:label='us-gaap_AssetsCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AssetsCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total current assets</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AssetsCurrent' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total current assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AssetsCurrent' xlink:to='lab_us-gaap_AssetsCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryNet' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventories (note 2)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryNet' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Inventories (note 2)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryNet' xlink:to='lab_us-gaap_InventoryNet'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityTaxIdentificationNumber' xlink:label='dei_EntityTaxIdentificationNumber'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityTaxIdentificationNumber' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Tax Identification Number</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityTaxIdentificationNumber' xlink:to='lab_dei_EntityTaxIdentificationNumber'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentPeriodEndDate' xlink:label='dei_DocumentPeriodEndDate'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentPeriodEndDate' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Period End Date</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentPeriodEndDate' xlink:to='lab_dei_DocumentPeriodEndDate'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1' xlink:label='us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Operating Lease, Weighted Average Remaining Lease Term</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1' xlink:to='lab_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee, Operating Lease, Liability, to be Paid, Year Four</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour' xlink:to='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee, Operating Lease, Liability, to be Paid, Year Two</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo' xlink:to='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GynecologyElectrosurgeryUrologyMember' xlink:label='fil_GynecologyElectrosurgeryUrologyMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_GynecologyElectrosurgeryUrologyMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Gynecology/Electrosurgery/Urology</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_GynecologyElectrosurgeryUrologyMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Gynecology/Electrosurgery/Urology, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_GynecologyElectrosurgeryUrologyMember' xlink:to='lab_fil_GynecologyElectrosurgeryUrologyMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized' xlink:label='us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized' xlink:to='lab_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Income (Loss) from Continuing Operations before Income Taxes, Foreign</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' xlink:to='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebt' xlink:label='us-gaap_LongTermDebt'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LongTermDebt' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-term Debt</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LongTermDebt' xlink:to='lab_us-gaap_LongTermDebt'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedPatentsGross' xlink:label='us-gaap_FiniteLivedPatentsGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedPatentsGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Patents, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedPatentsGross' xlink:to='lab_us-gaap_FiniteLivedPatentsGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquipmentMember' xlink:label='us-gaap_EquipmentMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EquipmentMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EquipmentMember' xlink:to='lab_us-gaap_EquipmentMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock' xlink:label='us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 13 - Employee Benefit Plans</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock' xlink:to='lab_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities' xlink:label='us-gaap_IncreaseDecreaseInAccruedLiabilities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInAccruedLiabilities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accrued expenses</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInAccruedLiabilities' xlink:to='lab_us-gaap_IncreaseDecreaseInAccruedLiabilities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:label='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Adjustments to reconcile net income to net cash provided by operating activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='lab_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash flows from operating activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='lab_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation' xlink:label='us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Tax benefit attributable to appreciation of stock options</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation' xlink:to='lab_us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract' xlink:label='us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other comprehensive income (loss)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract' xlink:to='lab_us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherInterestAndDividendIncome' xlink:label='us-gaap_OtherInterestAndDividendIncome'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherInterestAndDividendIncome' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Dividend and interest income</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherInterestAndDividendIncome' xlink:to='lab_us-gaap_OtherInterestAndDividendIncome'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_SecurityExchangeName' xlink:label='dei_SecurityExchangeName'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_SecurityExchangeName' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Security Exchange Name</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_SecurityExchangeName' xlink:to='lab_dei_SecurityExchangeName'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent' xlink:label='us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Operating Lease, Weighted Average Discount Rate, Percent</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent' xlink:to='lab_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability' xlink:label='us-gaap_OperatingLeaseLiability'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseLiability' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Operating Lease, Liability</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseLiability' xlink:to='lab_us-gaap_OperatingLeaseLiability'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CompanySalesInEurope' xlink:label='fil_CompanySalesInEurope'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_CompanySalesInEurope' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Company Sales in Europe</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_CompanySalesInEurope' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Company Sales in Europe, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_CompanySalesInEurope' xlink:to='lab_fil_CompanySalesInEurope'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Payment Arrangement, Option, Exercise Price Range, Lower Range Limit</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' xlink:to='lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1' xlink:label='us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1' xlink:to='lab_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments' xlink:label='us-gaap_IncomeTaxReconciliationOtherAdjustments'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxReconciliationOtherAdjustments' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Effective Income Tax Rate Reconciliation, Other Adjustments, Amount</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxReconciliationOtherAdjustments' xlink:to='lab_us-gaap_IncomeTaxReconciliationOtherAdjustments'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' xlink:label='us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' xlink:to='lab_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit' xlink:label='us-gaap_CurrentIncomeTaxExpenseBenefit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CurrentIncomeTaxExpenseBenefit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Current Income Tax Expense (Benefit)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CurrentIncomeTaxExpenseBenefit' xlink:to='lab_us-gaap_CurrentIncomeTaxExpenseBenefit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:label='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Diluted shares</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Weighted Average Number of Shares Outstanding, Diluted</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:to='lab_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:label='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Weighted Average Number of Shares Outstanding, Basic</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Weighted average shares, basic</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:to='lab_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember' xlink:label='srt_RangeMember'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_RangeMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Statistical Measurement</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_RangeMember' xlink:to='lab_srt_RangeMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock' xlink:label='us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Components of Income Tax Expense (Benefit)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock' xlink:label='us-gaap_ScheduleOfInventoryCurrentTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Inventory, Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfInventoryCurrentTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfInventoryCurrentTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock' xlink:label='us-gaap_EarningsPerSharePolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EarningsPerSharePolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Earnings Per Share</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EarningsPerSharePolicyTextBlock' xlink:to='lab_us-gaap_EarningsPerSharePolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock' xlink:label='us-gaap_IntangibleAssetsDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IntangibleAssetsDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 15 - CSI Distribution Agreement Purchase Disclosure</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IntangibleAssetsDisclosureTextBlock' xlink:to='lab_us-gaap_IntangibleAssetsDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock' xlink:label='us-gaap_CommitmentsAndContingenciesDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 6 - Commitments and Contingencies</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommitmentsAndContingenciesDisclosureTextBlock' xlink:to='lab_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax' xlink:label='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Tax</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax' xlink:to='lab_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Income before provision for income taxes</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Income before provision for income taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:to='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorLocation' xlink:label='dei_AuditorLocation'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_AuditorLocation' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Auditor Location</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_AuditorLocation' xlink:to='lab_dei_AuditorLocation'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAnnualReport' xlink:label='dei_DocumentAnnualReport'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentAnnualReport' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Annual Report</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentAnnualReport' xlink:to='lab_dei_DocumentAnnualReport'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CurrentFiscalYearEndDate' xlink:label='dei_CurrentFiscalYearEndDate'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_CurrentFiscalYearEndDate' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Current Fiscal Year End Date</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_CurrentFiscalYearEndDate' xlink:to='lab_dei_CurrentFiscalYearEndDate'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_NeonatalMember' xlink:label='fil_NeonatalMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_NeonatalMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Neonatal</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_NeonatalMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Neonatal, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_NeonatalMember' xlink:to='lab_fil_NeonatalMember'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GlobalMember' xlink:label='fil_GlobalMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_GlobalMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Global</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_GlobalMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Global, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_GlobalMember' xlink:to='lab_fil_GlobalMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes' xlink:label='us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes' xlink:to='lab_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' xlink:label='fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Regulatory approvals &amp; product certifications</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Regulatory approvals &amp; product certifications, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' xlink:to='lab_fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsAndOtherReceivablesNetCurrent' xlink:label='us-gaap_AccountsAndOtherReceivablesNetCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccountsAndOtherReceivablesNetCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts and Other Receivables, Net, Current</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccountsAndOtherReceivablesNetCurrent' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Accounts and Other Receivables, Net, Current</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccountsAndOtherReceivablesNetCurrent' xlink:to='lab_us-gaap_AccountsAndOtherReceivablesNetCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingAndBuildingImprovementsMember' xlink:label='us-gaap_BuildingAndBuildingImprovementsMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_BuildingAndBuildingImprovementsMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Building and Building Improvements</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_BuildingAndBuildingImprovementsMember' xlink:to='lab_us-gaap_BuildingAndBuildingImprovementsMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock' xlink:label='us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Income before Income Tax, Domestic and Foreign</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TableTextBlockSupplementAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Tables/Schedules</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='lab_us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock' xlink:label='us-gaap_IncomeTaxPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Income Taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxPolicyTextBlock' xlink:to='lab_us-gaap_IncomeTaxPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock' xlink:label='us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-lived Assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock' xlink:to='lab_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock' xlink:label='us-gaap_LesseeOperatingLeasesTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeasesTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 14 - Leases</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeasesTextBlock' xlink:to='lab_us-gaap_LesseeOperatingLeasesTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net cash (used in) financing activities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net cash (used in) financing activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:to='lab_us-gaap_NetCashProvidedByUsedInFinancingActivities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue' xlink:label='us-gaap_StockRepurchasedAndRetiredDuringPeriodValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock purchased and retired</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockRepurchasedAndRetiredDuringPeriodValue' xlink:to='lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeMember' xlink:label='us-gaap_ComprehensiveIncomeMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ComprehensiveIncomeMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Comprehensive Income</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ComprehensiveIncomeMember' xlink:to='lab_us-gaap_ComprehensiveIncomeMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense' xlink:label='us-gaap_ResearchAndDevelopmentExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ResearchAndDevelopmentExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Research and development</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ResearchAndDevelopmentExpense' xlink:to='lab_us-gaap_ResearchAndDevelopmentExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity' xlink:label='us-gaap_LiabilitiesAndStockholdersEquity'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesAndStockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total liabilities and stockholders&apos; equity</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesAndStockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total liabilities and stockholders&apos; equity</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LiabilitiesAndStockholdersEquity' xlink:to='lab_us-gaap_LiabilitiesAndStockholdersEquity'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity' xlink:label='us-gaap_StockholdersEquity'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total stockholders&apos; equity</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquity' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total stockholders&apos; equity</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockholdersEquity' xlink:to='lab_us-gaap_StockholdersEquity'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit' xlink:label='us-gaap_RetainedEarningsAccumulatedDeficit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RetainedEarningsAccumulatedDeficit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Retained earnings</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RetainedEarningsAccumulatedDeficit' xlink:to='lab_us-gaap_RetainedEarningsAccumulatedDeficit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent' xlink:label='us-gaap_OperatingLeaseLiabilityNoncurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseLiabilityNoncurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long term lease liability</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseLiabilityNoncurrent' xlink:to='lab_us-gaap_OperatingLeaseLiabilityNoncurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccruedLiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accrued expenses (note 2)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccruedLiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Accrued expenses (note 2)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccruedLiabilitiesCurrent' xlink:to='lab_us-gaap_AccruedLiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressPostalZipCode' xlink:label='dei_EntityAddressPostalZipCode'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityAddressPostalZipCode' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Address, Postal Zip Code</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityAddressPostalZipCode' xlink:to='lab_dei_EntityAddressPostalZipCode'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_TradingSymbol' xlink:label='dei_TradingSymbol'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_TradingSymbol' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Trading Symbol</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_TradingSymbol' xlink:to='lab_dei_TradingSymbol'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityRegistrantName' xlink:label='dei_EntityRegistrantName'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityRegistrantName' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Registrant Name</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityRegistrantName' xlink:to='lab_dei_EntityRegistrantName'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' xlink:label='fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Remaining years of exclusive U.S. distribution rights for Femcare&apos;s Filshie Clip System</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Remaining years of exclusive U.S. distribution rights for Femcare&apos;s Filshie Clip System, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' xlink:to='lab_fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInAustralia' xlink:label='fil_LongLivedAssetsInAustralia'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInAustralia' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-lived assets in Australia</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInAustralia' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Long-lived assets in Australia, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_LongLivedAssetsInAustralia' xlink:to='lab_fil_LongLivedAssetsInAustralia'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Payment Arrangement, Option, Exercise Price Range, Upper Range Limit</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' xlink:to='lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' xlink:label='us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Effective Income Tax Rate Reconciliation Tax Cuts And Jobs Act Of 2017 Transition Tax On Accumulated Foreign Earnings Amount</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' xlink:to='lab_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock' xlink:label='us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>New Accounting Pronouncements, Policy</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock' xlink:to='lab_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock' xlink:label='us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Intangible Assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock' xlink:to='lab_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock' xlink:label='us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 17 - Recent Accounting Pronouncements</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock' xlink:to='lab_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock' xlink:label='us-gaap_PaymentsForRepurchaseOfCommonStock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsForRepurchaseOfCommonStock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock purchased and retired {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsForRepurchaseOfCommonStock' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Common stock purchased and retired</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PaymentsForRepurchaseOfCommonStock' xlink:to='lab_us-gaap_PaymentsForRepurchaseOfCommonStock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock' xlink:label='us-gaap_ProceedsFromIssuanceOfCommonStock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ProceedsFromIssuanceOfCommonStock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Proceeds from issuance of common stock - options</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ProceedsFromIssuanceOfCommonStock' xlink:to='lab_us-gaap_ProceedsFromIssuanceOfCommonStock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOtherReceivables' xlink:label='us-gaap_IncreaseDecreaseInOtherReceivables'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInOtherReceivables' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other receivables</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInOtherReceivables' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Other receivables</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInOtherReceivables' xlink:to='lab_us-gaap_IncreaseDecreaseInOtherReceivables'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts' xlink:label='us-gaap_ProvisionForDoubtfulAccounts'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ProvisionForDoubtfulAccounts' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Provision for losses on accounts receivable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ProvisionForDoubtfulAccounts' xlink:to='lab_us-gaap_ProvisionForDoubtfulAccounts'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets' xlink:label='us-gaap_AmortizationOfIntangibleAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AmortizationOfIntangibleAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Amortization {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AmortizationOfIntangibleAssets' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Amortization</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AmortizationOfIntangibleAssets' xlink:to='lab_us-gaap_AmortizationOfIntangibleAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' xlink:label='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock issued upon exercise of employee stock options, shares</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' xlink:to='lab_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SellingAndMarketingExpense' xlink:label='us-gaap_SellingAndMarketingExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SellingAndMarketingExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Sales and marketing</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SellingAndMarketingExpense' xlink:to='lab_us-gaap_SellingAndMarketingExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet' xlink:label='us-gaap_DeferredIncomeTaxLiabilitiesNet'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredIncomeTaxLiabilitiesNet' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred income taxes (note 7)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DeferredIncomeTaxLiabilitiesNet' xlink:to='lab_us-gaap_DeferredIncomeTaxLiabilitiesNet'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityPublicFloat' xlink:label='dei_EntityPublicFloat'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityPublicFloat' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Public Float</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityPublicFloat' xlink:to='lab_dei_EntityPublicFloat'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TextBlockAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Details</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_TextBlockAbstract' xlink:to='lab_us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_ProductOrServiceAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Product and Service [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_ProductOrServiceAxis' xlink:to='lab_srt_ProductOrServiceAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScenarioUnspecifiedDomain' xlink:label='srt_ScenarioUnspecifiedDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_ScenarioUnspecifiedDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Scenario</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_ScenarioUnspecifiedDomain' xlink:to='lab_srt_ScenarioUnspecifiedDomain'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition' xlink:label='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months Period For Recognition</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months Period For Recognition, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition' xlink:to='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' xlink:label='fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Tax Cuts and Jobs Act of 2017 Global Intangible Low Taxed Income Income Tax Expense</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Tax Cuts and Jobs Act of 2017 Global Intangible Low Taxed Income Income Tax Expense, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' xlink:to='lab_fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_SegmentGeographicalDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Segment, Geographical</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_SegmentGeographicalDomain' xlink:to='lab_srt_SegmentGeographicalDomain'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConstructionInProgressGross' xlink:label='us-gaap_ConstructionInProgressGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ConstructionInProgressGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Construction in Progress, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ConstructionInProgressGross' xlink:to='lab_us-gaap_ConstructionInProgressGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent' xlink:label='us-gaap_OtherAccruedLiabilitiesCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherAccruedLiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherAccruedLiabilitiesCurrent' xlink:to='lab_us-gaap_OtherAccruedLiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss' xlink:label='us-gaap_GoodwillForeignCurrencyTranslationGainLoss'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Effect of foreign exchange</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_GoodwillForeignCurrencyTranslationGainLoss' xlink:to='lab_us-gaap_GoodwillForeignCurrencyTranslationGainLoss'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves' xlink:label='us-gaap_InventoryFinishedGoodsNetOfReserves'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryFinishedGoodsNetOfReserves' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventory, Finished Goods, Net of Reserves</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryFinishedGoodsNetOfReserves' xlink:to='lab_us-gaap_InventoryFinishedGoodsNetOfReserves'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Intangible Asset, Expected Amortization, Year One</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths' xlink:to='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock' xlink:label='us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock' xlink:to='lab_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock' xlink:label='us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock' xlink:label='us-gaap_ReceivablesPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ReceivablesPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts Receivable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ReceivablesPolicyTextBlock' xlink:to='lab_us-gaap_ReceivablesPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock' xlink:label='us-gaap_CashAndCashEquivalentsPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash and Cash Equivalents</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CashAndCashEquivalentsPolicyTextBlock' xlink:to='lab_us-gaap_CashAndCashEquivalentsPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PolicyTextBlockAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Policies</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='lab_us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock' xlink:label='us-gaap_SignificantAccountingPoliciesTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SignificantAccountingPoliciesTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 1 - Summary of Significant Accounting Policies</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SignificantAccountingPoliciesTextBlock' xlink:to='lab_us-gaap_SignificantAccountingPoliciesTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation' xlink:label='us-gaap_ShareBasedCompensation'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensation' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Stock-based compensation expense</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensation' xlink:to='lab_us-gaap_ShareBasedCompensation'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementLineItems' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Statement [Line Items]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementLineItems' xlink:to='lab_us-gaap_StatementLineItems'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableCurrent' xlink:label='us-gaap_AccountsPayableCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AccountsPayableCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Accounts payable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AccountsPayableCurrent' xlink:to='lab_us-gaap_AccountsPayableCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressCityOrTown' xlink:label='dei_EntityAddressCityOrTown'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityAddressCityOrTown' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Address, City or Town</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityAddressCityOrTown' xlink:to='lab_dei_EntityAddressCityOrTown'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFilerCategory' xlink:label='dei_EntityFilerCategory'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityFilerCategory' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Filer Category</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityFilerCategory' xlink:to='lab_dei_EntityFilerCategory'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCommonStockSharesOutstanding' xlink:label='dei_EntityCommonStockSharesOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityCommonStockSharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Common Stock, Shares Outstanding</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityCommonStockSharesOutstanding' xlink:to='lab_dei_EntityCommonStockSharesOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList' xlink:label='us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Operating Lease, Liability, Current, Statement of Financial Position</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList' xlink:to='lab_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Income (Loss) from Continuing Operations before Income Taxes, Domestic</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:to='lab_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential' xlink:label='us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential' xlink:to='lab_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock' xlink:label='us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Accrued Expenses</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UseOfEstimates' xlink:label='us-gaap_UseOfEstimates'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_UseOfEstimates' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Use of Estimates in The Preparation of Financial Statements</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_UseOfEstimates' xlink:to='lab_us-gaap_UseOfEstimates'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ProductSaleAndPurchaseCommitmentsTextBlock' xlink:label='fil_ProductSaleAndPurchaseCommitmentsTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_ProductSaleAndPurchaseCommitmentsTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 12 - Product Sale and Purchase Commitments</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_ProductSaleAndPurchaseCommitmentsTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Note 12 - Product Sale and Purchase Commitments, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_ProductSaleAndPurchaseCommitmentsTextBlock' xlink:to='lab_fil_ProductSaleAndPurchaseCommitmentsTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtTextBlock' xlink:label='us-gaap_LongTermDebtTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LongTermDebtTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 5 - Long-term Debt</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LongTermDebtTextBlock' xlink:to='lab_us-gaap_LongTermDebtTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxesPaid' xlink:label='us-gaap_IncomeTaxesPaid'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncomeTaxesPaid' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash paid during the period for income taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncomeTaxesPaid' xlink:to='lab_us-gaap_IncomeTaxesPaid'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine1' xlink:label='dei_EntityAddressAddressLine1'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityAddressAddressLine1' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Address, Address Line One</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityAddressAddressLine1' xlink:to='lab_dei_EntityAddressAddressLine1'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityExTransitionPeriod' xlink:label='dei_EntityExTransitionPeriod'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityExTransitionPeriod' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Ex Transition Period</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityExTransitionPeriod' xlink:to='lab_dei_EntityExTransitionPeriod'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee, Operating Lease, Liability, to be Paid, Year Five</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive' xlink:to='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseCost' xlink:label='us-gaap_OperatingLeaseCost'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseCost' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Operating Lease, Cost</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseCost' xlink:to='lab_us-gaap_OperatingLeaseCost'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInEngland' xlink:label='fil_LongLivedAssetsInEngland'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInEngland' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-lived assets in England</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInEngland' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Long-lived assets in England, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_LongLivedAssetsInEngland' xlink:to='lab_fil_LongLivedAssetsInEngland'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' xlink:label='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' xlink:to='lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions' xlink:label='us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Payment Arrangement, Exercise of Option, Tax Benefit</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions' xlink:to='lab_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_U.S.AndCanadaMember' xlink:label='fil_U.S.AndCanadaMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_U.S.AndCanadaMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>U.S. and Canada</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_U.S.AndCanadaMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the U.S. and Canada, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_U.S.AndCanadaMember' xlink:to='lab_fil_U.S.AndCanadaMember'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD' xlink:label='fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Foreign Currency Exchange Rate Translation GBP to USD</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the pure numeric value of Foreign Currency Exchange Rate Translation GBP to USD, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD' xlink:to='lab_fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis' xlink:label='srt_RangeAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_RangeAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Statistical Measurement [Axis]</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_RangeAxis' xlink:to='lab_srt_RangeAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LegalCostsPolicyTextBlock' xlink:label='us-gaap_LegalCostsPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LegalCostsPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Legal Costs</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LegalCostsPolicyTextBlock' xlink:to='lab_us-gaap_LegalCostsPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy' xlink:label='us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Stock-based Compensation</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy' xlink:to='lab_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GeographicInformationTextBlock' xlink:label='fil_GeographicInformationTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_GeographicInformationTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 9 - Geographic Information</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_GeographicInformationTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Note 9 - Geographic Information, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_GeographicInformationTextBlock' xlink:to='lab_fil_GeographicInformationTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividends' xlink:label='us-gaap_PaymentsOfDividends'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsOfDividends' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Dividends paid</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsOfDividends' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Dividends paid</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PaymentsOfDividends' xlink:to='lab_us-gaap_PaymentsOfDividends'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories' xlink:label='us-gaap_IncreaseDecreaseInInventories'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInInventories' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventories</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInInventories' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Inventories</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInInventories' xlink:to='lab_us-gaap_IncreaseDecreaseInInventories'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsCommonStockCash' xlink:label='us-gaap_DividendsCommonStockCash'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DividendsCommonStockCash' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock dividends</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DividendsCommonStockCash' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Common stock dividends</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DividendsCommonStockCash' xlink:to='lab_us-gaap_DividendsCommonStockCash'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares' xlink:label='us-gaap_StockRepurchasedAndRetiredDuringPeriodShares'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock purchased and retired, shares</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockRepurchasedAndRetiredDuringPeriodShares' xlink:to='lab_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding' xlink:label='us-gaap_SharesOutstanding'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Equity Balance, shares</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/periodStartLabel' xml:lang='en-US'>Equity Balance, shares</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SharesOutstanding' xlink:role='http://www.xbrl.org/2003/role/periodEndLabel' xml:lang='en-US'>Equity Balance, shares</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SharesOutstanding' xlink:to='lab_us-gaap_SharesOutstanding'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted' xlink:label='us-gaap_EarningsPerShareDiluted'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EarningsPerShareDiluted' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Earnings per common share (diluted) (note 1)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EarningsPerShareDiluted' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Earnings Per Share Diluted</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EarningsPerShareDiluted' xlink:to='lab_us-gaap_EarningsPerShareDiluted'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityWellKnownSeasonedIssuer' xlink:label='dei_EntityWellKnownSeasonedIssuer'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityWellKnownSeasonedIssuer' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Well-Known Seasoned Issuer</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityWellKnownSeasonedIssuer' xlink:to='lab_dei_EntityWellKnownSeasonedIssuer'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Payment Arrangement, Option, Exercise Price Range, Shares Exercisable</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' xlink:to='lab_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_WeightedAverageRemainingContractualLifeYears' xlink:label='fil_WeightedAverageRemainingContractualLifeYears'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_WeightedAverageRemainingContractualLifeYears' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Weighted Average Remaining Contractual Life (Years)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_WeightedAverageRemainingContractualLifeYears' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Weighted Average Remaining Contractual Life (Years), as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_WeightedAverageRemainingContractualLifeYears' xlink:to='lab_fil_WeightedAverageRemainingContractualLifeYears'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareExercised' xlink:label='fil_PriceRangePerShareExercised'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareExercised' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Price Range Per Share Exercised</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_PriceRangePerShareExercised' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the description of Price Range Per Share Exercised, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_PriceRangePerShareExercised' xlink:to='lab_fil_PriceRangePerShareExercised'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross' xlink:label='us-gaap_BuildingsAndImprovementsGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_BuildingsAndImprovementsGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Buildings and Improvements, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_BuildingsAndImprovementsGross' xlink:to='lab_us-gaap_BuildingsAndImprovementsGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Land' xlink:label='us-gaap_Land'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Land' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Land</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Land' xlink:to='lab_us-gaap_Land'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Intangible Asset, Expected Amortization, Year Four</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour' xlink:to='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionDomain' xlink:label='fil_DistributionRightsAcquisitionDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_DistributionRightsAcquisitionDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Distribution Rights Acquisition</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_DistributionRightsAcquisitionDomain' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Distribution Rights Acquisition, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_DistributionRightsAcquisitionDomain' xlink:to='lab_fil_DistributionRightsAcquisitionDomain'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionAxis' xlink:label='fil_DistributionRightsAcquisitionAxis'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_DistributionRightsAcquisitionAxis' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Distribution Rights Acquisition [Axis]</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_DistributionRightsAcquisitionAxis' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the description of Distribution Rights Acquisition, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_DistributionRightsAcquisitionAxis' xlink:to='lab_fil_DistributionRightsAcquisitionAxis'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock' xlink:label='us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Share-based Compensation, Stock Options, Activity</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock' xlink:label='us-gaap_PropertyPlantAndEquipmentTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Property, Plant and Equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentTextBlock' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock' xlink:label='us-gaap_RevenueRecognitionPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RevenueRecognitionPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Revenue Recognition</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RevenueRecognitionPolicyTextBlock' xlink:to='lab_us-gaap_RevenueRecognitionPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsTextBlock' xlink:label='us-gaap_SubsequentEventsTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SubsequentEventsTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 18 - Subsequent Events</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SubsequentEventsTextBlock' xlink:to='lab_us-gaap_SubsequentEventsTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock' xlink:label='us-gaap_SupplementalBalanceSheetDisclosuresTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 2 - Detail of Certain Balance Sheet Accounts</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SupplementalBalanceSheetDisclosuresTextBlock' xlink:to='lab_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:label='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Property and equipment</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Property and equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:to='lab_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:label='us-gaap_DeferredIncomeTaxExpenseBenefit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred income taxes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:to='lab_us-gaap_DeferredIncomeTaxExpenseBenefit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets' xlink:label='us-gaap_GainLossOnDispositionOfAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GainLossOnDispositionOfAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Loss/(Gain) on disposal of assets</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GainLossOnDispositionOfAssets' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Loss/(Gain) on disposal of assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_GainLossOnDispositionOfAssets' xlink:to='lab_us-gaap_GainLossOnDispositionOfAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense' xlink:label='us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Amortization of operating lease assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense' xlink:to='lab_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' xlink:label='us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Equity Balance, value</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' xlink:role='http://www.xbrl.org/2003/role/periodStartLabel' xml:lang='en-US'>Equity Balance, value</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' xlink:role='http://www.xbrl.org/2003/role/periodEndLabel' xml:lang='en-US'>Equity Balance, value</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' xlink:to='lab_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember' xlink:label='us-gaap_CommonStockMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockMember' xlink:to='lab_us-gaap_CommonStockMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StatementTable' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Statement</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StatementTable' xlink:to='lab_us-gaap_StatementTable'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense' xlink:label='us-gaap_OtherNonoperatingIncomeExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherNonoperatingIncomeExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other, net</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherNonoperatingIncomeExpense' xlink:to='lab_us-gaap_OtherNonoperatingIncomeExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense' xlink:label='us-gaap_GeneralAndAdministrativeExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GeneralAndAdministrativeExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>General and administrative</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_GeneralAndAdministrativeExpense' xlink:to='lab_us-gaap_GeneralAndAdministrativeExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock' xlink:label='us-gaap_AdditionalPaidInCapitalCommonStock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AdditionalPaidInCapitalCommonStock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Additional paid-in capital</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AdditionalPaidInCapitalCommonStock' xlink:to='lab_us-gaap_AdditionalPaidInCapitalCommonStock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities' xlink:label='us-gaap_Liabilities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Liabilities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total liabilities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Liabilities' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total liabilities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Liabilities' xlink:to='lab_us-gaap_Liabilities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill' xlink:label='us-gaap_Goodwill'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Goodwill' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Goodwill</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Goodwill' xlink:role='http://www.xbrl.org/2003/role/periodStartLabel' xml:lang='en-US'>Balance as of January 1</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Goodwill' xlink:role='http://www.xbrl.org/2003/role/periodEndLabel' xml:lang='en-US'>Total Goodwill as of December 31</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Goodwill' xlink:to='lab_us-gaap_Goodwill'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorName' xlink:label='dei_AuditorName'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_AuditorName' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Auditor Name</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_AuditorName' xlink:to='lab_dei_AuditorName'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalYearFocus' xlink:label='dei_DocumentFiscalYearFocus'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_DocumentFiscalYearFocus' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Document Fiscal Year Focus</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_DocumentFiscalYearFocus' xlink:to='lab_dei_DocumentFiscalYearFocus'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CityAreaCode' xlink:label='dei_CityAreaCode'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_CityAreaCode' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>City Area Code</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_CityAreaCode' xlink:to='lab_dei_CityAreaCode'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFileNumber' xlink:label='dei_EntityFileNumber'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityFileNumber' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity File Number</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityFileNumber' xlink:to='lab_dei_EntityFileNumber'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityShellCompany' xlink:label='dei_EntityShellCompany'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityShellCompany' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Shell Company</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityShellCompany' xlink:to='lab_dei_EntityShellCompany'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee, Operating Lease, Liability, to be Paid, Year One</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths' xlink:to='lab_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_OusMember' xlink:label='fil_OusMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_OusMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>OUS</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_OusMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the OUS, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_OusMember' xlink:to='lab_fil_OusMember'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInCanada' xlink:label='fil_LongLivedAssetsInCanada'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInCanada' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-lived assets in Canada</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInCanada' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Long-lived assets in Canada, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_LongLivedAssetsInCanada' xlink:to='lab_fil_LongLivedAssetsInCanada'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DeferredIncomeTaxExpense' xlink:label='fil_DeferredIncomeTaxExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_DeferredIncomeTaxExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred Income Tax Expense</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_DeferredIncomeTaxExpense' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Deferred Income Tax Expense, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_DeferredIncomeTaxExpense' xlink:to='lab_fil_DeferredIncomeTaxExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' xlink:label='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' xlink:to='lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' xlink:label='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred Tax Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' xlink:to='lab_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestReceivableAndOtherAssets' xlink:label='us-gaap_InterestReceivableAndOtherAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InterestReceivableAndOtherAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Interest Receivable and Other Assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InterestReceivableAndOtherAssets' xlink:to='lab_us-gaap_InterestReceivableAndOtherAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense' xlink:label='us-gaap_AllocatedShareBasedCompensationExpense'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AllocatedShareBasedCompensationExpense' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Payment Arrangement, Expense</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AllocatedShareBasedCompensationExpense' xlink:to='lab_us-gaap_AllocatedShareBasedCompensationExpense'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife' xlink:label='us-gaap_FiniteLivedIntangibleAssetUsefulLife'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Intangible Asset, Useful Life</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedIntangibleAssetUsefulLife' xlink:to='lab_us-gaap_FiniteLivedIntangibleAssetUsefulLife'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife' xlink:label='us-gaap_PropertyPlantAndEquipmentUsefulLife'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentUsefulLife' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Property, Plant and Equipment, Useful Life</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentUsefulLife' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentUsefulLife'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ScheduleofousrevenuesbyproductcategoryTextBlock' xlink:label='fil_ScheduleofousrevenuesbyproductcategoryTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_ScheduleofousrevenuesbyproductcategoryTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule Of OUS Revenues By Product Category</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_ScheduleofousrevenuesbyproductcategoryTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Schedule Of OUS Revenues By Product Category, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_ScheduleofousrevenuesbyproductcategoryTextBlock' xlink:to='lab_fil_ScheduleofousrevenuesbyproductcategoryTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PropertyPlantAndEquipmentByLocationTextBlock' xlink:label='fil_PropertyPlantAndEquipmentByLocationTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_PropertyPlantAndEquipmentByLocationTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Property Plant and Equipment by Location</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_PropertyPlantAndEquipmentByLocationTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Property Plant and Equipment by Location, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_PropertyPlantAndEquipmentByLocationTextBlock' xlink:to='lab_fil_PropertyPlantAndEquipmentByLocationTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock' xlink:label='us-gaap_ScheduleOfGoodwillTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfGoodwillTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Goodwill</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfGoodwillTextBlock' xlink:to='lab_us-gaap_ScheduleOfGoodwillTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock' xlink:label='us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Accounts and Other Receivables</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock' xlink:to='lab_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PresentationOfSalesAndSimilarTaxesTextBlock' xlink:label='fil_PresentationOfSalesAndSimilarTaxesTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_PresentationOfSalesAndSimilarTaxesTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Presentation of Sales and Similar Taxes</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_PresentationOfSalesAndSimilarTaxesTextBlock' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the textual narrative disclosure of Presentation of Sales and Similar Taxes, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_PresentationOfSalesAndSimilarTaxesTextBlock' xlink:to='lab_fil_PresentationOfSalesAndSimilarTaxesTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DisclosureTextBlockAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Notes</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='lab_us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets' xlink:label='us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred tax liability - intangible assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets' xlink:to='lab_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross' xlink:label='us-gaap_FiniteLivedIntangibleAssetsGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Other intangible assets (note 2)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsGross' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Other intangible assets (note 2)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedIntangibleAssetsGross' xlink:to='lab_us-gaap_FiniteLivedIntangibleAssetsGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentNet' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Property and equipment, net (notes 4 and 10)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentNet' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Property and equipment, net (notes 4 and 10)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentNet' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract' xlink:label='us-gaap_AssetsCurrentAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_AssetsCurrentAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Current assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='lab_us-gaap_AssetsCurrentAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LesseeOperatingLeaseForParkingLotTermOfContract' xlink:label='fil_LesseeOperatingLeaseForParkingLotTermOfContract'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_LesseeOperatingLeaseForParkingLotTermOfContract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee Operating Lease for Parking Lot Term of Contract</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_LesseeOperatingLeaseForParkingLotTermOfContract' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Lessee Operating Lease for Parking Lot Term of Contract, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_LesseeOperatingLeaseForParkingLotTermOfContract' xlink:to='lab_fil_LesseeOperatingLeaseForParkingLotTermOfContract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInTheUnitedStates' xlink:label='fil_LongLivedAssetsInTheUnitedStates'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInTheUnitedStates' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long-lived assets in the United States</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_LongLivedAssetsInTheUnitedStates' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Long-lived assets in the United States, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_LongLivedAssetsInTheUnitedStates' xlink:to='lab_fil_LongLivedAssetsInTheUnitedStates'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' xlink:label='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Exercise Price</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' xlink:to='lab_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsInventory' xlink:label='us-gaap_DeferredTaxAssetsInventory'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredTaxAssetsInventory' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred Tax Assets, Inventory</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DeferredTaxAssetsInventory' xlink:to='lab_us-gaap_DeferredTaxAssetsInventory'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock' xlink:label='us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Effective Income Tax Rate Reconciliation</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock' xlink:label='us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Weighted Average Number of Shares</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryPolicyTextBlock' xlink:label='us-gaap_InventoryPolicyTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Inventories {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_InventoryPolicyTextBlock' xlink:role='http://www.xbrl.org/2003/role/terseLabel' xml:lang='en-US'>Inventories</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_InventoryPolicyTextBlock' xlink:to='lab_us-gaap_InventoryPolicyTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireIntangibleAssets' xlink:label='us-gaap_PaymentsToAcquireIntangibleAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquireIntangibleAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Intangible assets</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PaymentsToAcquireIntangibleAssets' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Intangible assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PaymentsToAcquireIntangibleAssets' xlink:to='lab_us-gaap_PaymentsToAcquireIntangibleAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Net cash provided by operating activities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Net cash provided by operating activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:to='lab_us-gaap_NetCashProvidedByUsedInOperatingActivities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' xlink:label='us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Prepaid expenses and other current assets {1}</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Prepaid expenses and other current assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' xlink:to='lab_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' xlink:label='us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Tax benefit attributable to exercise of stock options</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' xlink:role='http://www.xbrl.org/2009/role/negatedLabel' xml:lang='en-US'>Tax benefit attributable to exercise of stock options</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' xlink:to='lab_us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised' xlink:label='us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock issued upon exercise of employee stock options</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised' xlink:to='lab_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember' xlink:label='us-gaap_RetainedEarningsMember'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RetainedEarningsMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Retained Earnings</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RetainedEarningsMember' xlink:to='lab_us-gaap_RetainedEarningsMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit' xlink:label='us-gaap_GrossProfit'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GrossProfit' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Gross profit</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GrossProfit' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Gross profit</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_GrossProfit' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Gross Profit</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_GrossProfit' xlink:to='lab_us-gaap_GrossProfit'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Sales, net (notes 1, 3, 9 and 11)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Net Sales</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:to='lab_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesAuthorized' xlink:label='us-gaap_CommonStockSharesAuthorized'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockSharesAuthorized' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common Stock, Shares Authorized</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockSharesAuthorized' xlink:to='lab_us-gaap_CommonStockSharesAuthorized'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent' xlink:label='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Long term income tax payable (REPAT tax) (note 7)</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent' xlink:to='lab_us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent' xlink:label='us-gaap_LiabilitiesCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total current liabilities</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesCurrent' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total current liabilities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LiabilitiesCurrent' xlink:to='lab_us-gaap_LiabilitiesCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:label='us-gaap_LiabilitiesAndStockholdersEquityAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>LIABILITIES AND STOCKHOLDERS&apos; EQUITY</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:to='lab_us-gaap_LiabilitiesAndStockholdersEquityAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets' xlink:label='us-gaap_Assets'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Assets' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Total assets</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_Assets' xlink:role='http://www.xbrl.org/2003/role/totalLabel' xml:lang='en-US'>Total assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_Assets' xlink:to='lab_us-gaap_Assets'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssetsCurrent' xlink:label='us-gaap_OtherAssetsCurrent'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_OtherAssetsCurrent' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Prepaid expenses and other current assets</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_OtherAssetsCurrent' xlink:to='lab_us-gaap_OtherAssetsCurrent'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityVoluntaryFilers' xlink:label='dei_EntityVoluntaryFilers'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_EntityVoluntaryFilers' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Entity Voluntary Filers</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_EntityVoluntaryFilers' xlink:to='lab_dei_EntityVoluntaryFilers'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LesseeOperatingLeaseForAutomobileTermOfContract' xlink:label='fil_LesseeOperatingLeaseForAutomobileTermOfContract'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_LesseeOperatingLeaseForAutomobileTermOfContract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Lessee Operating Lease for Automobile Term of Contract</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_LesseeOperatingLeaseForAutomobileTermOfContract' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Lessee Operating Lease for Automobile Term of Contract, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_LesseeOperatingLeaseForAutomobileTermOfContract' xlink:to='lab_fil_LesseeOperatingLeaseForAutomobileTermOfContract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_Range2Member' xlink:label='fil_Range2Member'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_Range2Member' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Range 2</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_Range2Member' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the Range 2, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_Range2Member' xlink:to='lab_fil_Range2Member'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths' xlink:label='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the monetary amount of Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths' xlink:to='lab_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue' xlink:to='lab_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities' xlink:label='us-gaap_DeferredTaxLiabilities'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredTaxLiabilities' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Deferred Tax Liabilities, Net</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_DeferredTaxLiabilities' xlink:role='http://www.xbrl.org/2009/role/negatedTotalLabel' xml:lang='en-US'>Deferred Tax Liabilities, Net</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_DeferredTaxLiabilities' xlink:to='lab_us-gaap_DeferredTaxLiabilities'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedCustomerRelationshipsGross' xlink:label='us-gaap_FiniteLivedCustomerRelationshipsGross'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedCustomerRelationshipsGross' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Customer Relationships, Gross</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedCustomerRelationshipsGross' xlink:to='lab_us-gaap_FiniteLivedCustomerRelationshipsGross'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LitigationReserve' xlink:label='us-gaap_LitigationReserve'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_LitigationReserve' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Estimated Litigation Liability</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_LitigationReserve' xlink:to='lab_us-gaap_LitigationReserve'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Intangible Asset, Expected Amortization, Year Three</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree' xlink:to='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Finite-Lived Intangible Asset, Expected Amortization, Year Two</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo' xlink:to='lab_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD' xlink:label='fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Foreign Currency Exchange Rate Translation AUD to USD</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the pure numeric value of Foreign Currency Exchange Rate Translation AUD to USD, as of the indicated date.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD' xlink:to='lab_fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CoopersurgicalIncMember' xlink:label='fil_CoopersurgicalIncMember'/>
		<link:label xlink:type='resource' xlink:label='lab_fil_CoopersurgicalIncMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>CooperSurgical Inc</link:label>
		<link:label xlink:type='resource' xlink:label='lab_fil_CoopersurgicalIncMember' xlink:role='http://www.xbrl.org/2003/role/documentation' xml:lang='en-US'>Represents the CooperSurgical Inc, during the indicated time period.</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='fil_CoopersurgicalIncMember' xlink:to='lab_fil_CoopersurgicalIncMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember' xlink:label='srt_MaximumMember'/>
		<link:label xlink:type='resource' xlink:label='lab_srt_MaximumMember' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Maximum</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='srt_MaximumMember' xlink:to='lab_srt_MaximumMember'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock' xlink:label='us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Schedule of Earnings Per Share, Basic and Diluted</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock' xlink:to='lab_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareTextBlock' xlink:label='us-gaap_EarningsPerShareTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EarningsPerShareTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 16 - Earnings Per Share</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EarningsPerShareTextBlock' xlink:to='lab_us-gaap_EarningsPerShareTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock' xlink:label='us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Note 4 - Property and Equipment</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock' xlink:to='lab_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents' xlink:label='us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Effect of exchange rate changes on cash</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents' xlink:to='lab_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Cash flows from financing activities</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:to='lab_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EquityComponentDomain' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Equity Component</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EquityComponentDomain' xlink:to='lab_us-gaap_EquityComponentDomain'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic' xlink:label='us-gaap_EarningsPerShareBasic'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EarningsPerShareBasic' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Earnings per common share (basic) (note 1)</link:label>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_EarningsPerShareBasic' xlink:role='http://www.xbrl.org/2003/role/verboseLabel' xml:lang='en-US'>Earnings per share, basic</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_EarningsPerShareBasic' xlink:to='lab_us-gaap_EarningsPerShareBasic'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue' xlink:label='us-gaap_CommonStockValue'/>
		<link:label xlink:type='resource' xlink:label='lab_us-gaap_CommonStockValue' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Common stock, $.01 par value; 50,000 shares authorized, 3,655 shares issued and outstanding in 2021 and 3,643 shares in 2020</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='us-gaap_CommonStockValue' xlink:to='lab_us-gaap_CommonStockValue'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LocalPhoneNumber' xlink:label='dei_LocalPhoneNumber'/>
		<link:label xlink:type='resource' xlink:label='lab_dei_LocalPhoneNumber' xlink:role='http://www.xbrl.org/2003/role/label' xml:lang='en-US'>Local Phone Number</link:label>
		<link:labelArc order='1.0' xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/concept-label' xlink:from='dei_LocalPhoneNumber' xlink:to='lab_dei_LocalPhoneNumber'/>
	</link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>13
<FILENAME>utmd-20211231_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<link:linkbase xmlns="http://www.xbrl.org/2003/linkbase"
		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"
		xmlns:fil="http://www.utahmed.com/20211231"
		xmlns:link="http://www.xbrl.org/2003/linkbase"
		xmlns:xlink="http://www.w3.org/1999/xlink"
		xmlns:xbrldt="http://xbrl.org/2005/xbrldt"
		xmlns:xbrli="http://www.xbrl.org/2003/instance">
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DocumentDocumentAndEntityInformation"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityRegistrantName' xlink:label='dei_EntityRegistrantName'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityRegistrantName' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCentralIndexKey' xlink:label='dei_EntityCentralIndexKey'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityCentralIndexKey' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentType' xlink:label='dei_DocumentType'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentType' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentPeriodEndDate' xlink:label='dei_DocumentPeriodEndDate'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentPeriodEndDate' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CurrentFiscalYearEndDate' xlink:label='dei_CurrentFiscalYearEndDate'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_CurrentFiscalYearEndDate' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_TradingSymbol' xlink:label='dei_TradingSymbol'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_TradingSymbol' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityTaxIdentificationNumber' xlink:label='dei_EntityTaxIdentificationNumber'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityTaxIdentificationNumber' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCommonStockSharesOutstanding' xlink:label='dei_EntityCommonStockSharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityCommonStockSharesOutstanding' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityPublicFloat' xlink:label='dei_EntityPublicFloat'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityPublicFloat' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFilerCategory' xlink:label='dei_EntityFilerCategory'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityFilerCategory' use='optional' order='10.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityCurrentReportingStatus' xlink:label='dei_EntityCurrentReportingStatus'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityCurrentReportingStatus' use='optional' order='11.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityVoluntaryFilers' xlink:label='dei_EntityVoluntaryFilers'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityVoluntaryFilers' use='optional' order='12.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityWellKnownSeasonedIssuer' xlink:label='dei_EntityWellKnownSeasonedIssuer'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityWellKnownSeasonedIssuer' use='optional' order='13.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityShellCompany' xlink:label='dei_EntityShellCompany'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityShellCompany' use='optional' order='14.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntitySmallBusiness' xlink:label='dei_EntitySmallBusiness'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntitySmallBusiness' use='optional' order='15.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityEmergingGrowthCompany' xlink:label='dei_EntityEmergingGrowthCompany'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityEmergingGrowthCompany' use='optional' order='16.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityExTransitionPeriod' xlink:label='dei_EntityExTransitionPeriod'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityExTransitionPeriod' use='optional' order='17.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AmendmentDescription' xlink:label='dei_AmendmentDescription'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_AmendmentDescription' use='optional' order='18.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentAnnualReport' xlink:label='dei_DocumentAnnualReport'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentAnnualReport' use='optional' order='19.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentTransitionReport' xlink:label='dei_DocumentTransitionReport'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentTransitionReport' use='optional' order='20.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityFileNumber' xlink:label='dei_EntityFileNumber'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityFileNumber' use='optional' order='21.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityIncorporationStateCountryCode' xlink:label='dei_EntityIncorporationStateCountryCode'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityIncorporationStateCountryCode' use='optional' order='22.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressAddressLine1' xlink:label='dei_EntityAddressAddressLine1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityAddressAddressLine1' use='optional' order='23.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressCityOrTown' xlink:label='dei_EntityAddressCityOrTown'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityAddressCityOrTown' use='optional' order='24.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressStateOrProvince' xlink:label='dei_EntityAddressStateOrProvince'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityAddressStateOrProvince' use='optional' order='25.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityAddressPostalZipCode' xlink:label='dei_EntityAddressPostalZipCode'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityAddressPostalZipCode' use='optional' order='26.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_CityAreaCode' xlink:label='dei_CityAreaCode'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_CityAreaCode' use='optional' order='27.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_LocalPhoneNumber' xlink:label='dei_LocalPhoneNumber'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_LocalPhoneNumber' use='optional' order='28.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_Security12bTitle' xlink:label='dei_Security12bTitle'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_Security12bTitle' use='optional' order='29.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_SecurityExchangeName' xlink:label='dei_SecurityExchangeName'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_SecurityExchangeName' use='optional' order='30.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_EntityInteractiveDataCurrent' xlink:label='dei_EntityInteractiveDataCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_EntityInteractiveDataCurrent' use='optional' order='31.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_IcfrAuditorAttestationFlag' xlink:label='dei_IcfrAuditorAttestationFlag'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_IcfrAuditorAttestationFlag' use='optional' order='32.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentsIncorporatedByReferenceTextBlock' xlink:label='dei_DocumentsIncorporatedByReferenceTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentsIncorporatedByReferenceTextBlock' use='optional' order='33.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AmendmentFlag' xlink:label='dei_AmendmentFlag'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_AmendmentFlag' use='optional' order='34.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalYearFocus' xlink:label='dei_DocumentFiscalYearFocus'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentFiscalYearFocus' use='optional' order='35.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_DocumentFiscalPeriodFocus' xlink:label='dei_DocumentFiscalPeriodFocus'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_DocumentFiscalPeriodFocus' use='optional' order='36.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorName' xlink:label='dei_AuditorName'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_AuditorName' use='optional' order='37.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorLocation' xlink:label='dei_AuditorLocation'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_AuditorLocation' use='optional' order='38.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd#dei_AuditorFirmId' xlink:label='dei_AuditorFirmId'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='dei_AuditorFirmId' use='optional' order='39.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsAbstract' xlink:label='us-gaap_AssetsAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AssetsAbstract' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrentAbstract' xlink:label='us-gaap_AssetsCurrentAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AssetsCurrentAbstract' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_CashAndCashEquivalentsAtCarryingValue' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableNetCurrent' xlink:label='us-gaap_AccountsReceivableNetCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_AccountsReceivableNetCurrent' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_InventoryNet' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAssetsCurrent' xlink:label='us-gaap_OtherAssetsCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AssetsCurrentAbstract' xlink:to='us-gaap_OtherAssetsCurrent' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AssetsCurrent' xlink:label='us-gaap_AssetsCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_OtherAssetsCurrent' xlink:to='us-gaap_AssetsCurrent' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill' xlink:label='us-gaap_Goodwill'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_Goodwill' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross' xlink:label='us-gaap_FiniteLivedIntangibleAssetsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_FiniteLivedIntangibleAssetsGross' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill' xlink:label='us-gaap_IntangibleAssetsNetExcludingGoodwill'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' xlink:to='us-gaap_IntangibleAssetsNetExcludingGoodwill' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Assets' xlink:label='us-gaap_Assets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_Assets' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquityAbstract' xlink:label='us-gaap_LiabilitiesAndStockholdersEquityAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LiabilitiesAndStockholdersEquityAbstract' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrentAbstract' xlink:label='us-gaap_LiabilitiesCurrentAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LiabilitiesCurrentAbstract' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsPayableCurrent' xlink:label='us-gaap_AccountsPayableCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AccountsPayableCurrent' use='optional' order='10.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AccruedLiabilitiesCurrent' use='optional' order='11.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesCurrent' xlink:label='us-gaap_LiabilitiesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LiabilitiesCurrent' use='optional' order='12.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent' xlink:label='us-gaap_OperatingLeaseLiabilityNoncurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseLiabilityNoncurrent' use='optional' order='13.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent' xlink:label='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent' use='optional' order='14.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets' xlink:label='us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets' use='optional' order='15.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxLiabilitiesNet' xlink:label='us-gaap_DeferredIncomeTaxLiabilitiesNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_DeferredIncomeTaxLiabilitiesNet' use='optional' order='16.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Liabilities' xlink:label='us-gaap_Liabilities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_Liabilities' use='optional' order='17.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingencies' xlink:label='us-gaap_CommitmentsAndContingencies'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CommitmentsAndContingencies' use='optional' order='18.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityAbstract' xlink:label='us-gaap_StockholdersEquityAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StockholdersEquityAbstract' use='optional' order='19.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockValue' xlink:label='us-gaap_CommonStockValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CommonStockValue' use='optional' order='20.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1' xlink:label='us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1' use='optional' order='21.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalCommonStock' xlink:label='us-gaap_AdditionalPaidInCapitalCommonStock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AdditionalPaidInCapitalCommonStock' use='optional' order='22.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsAccumulatedDeficit' xlink:label='us-gaap_RetainedEarningsAccumulatedDeficit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_RetainedEarningsAccumulatedDeficit' use='optional' order='23.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquity' xlink:label='us-gaap_StockholdersEquity'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StockholdersEquity' use='optional' order='24.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LiabilitiesAndStockholdersEquity' xlink:label='us-gaap_LiabilitiesAndStockholdersEquity'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LiabilitiesAndStockholdersEquity' use='optional' order='25.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockParOrStatedValuePerShare' xlink:label='us-gaap_CommonStockParOrStatedValuePerShare'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CommonStockParOrStatedValuePerShare' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesAuthorized' xlink:label='us-gaap_CommonStockSharesAuthorized'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CommonStockSharesAuthorized' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesIssued' xlink:label='us-gaap_CommonStockSharesIssued'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CommonStockSharesIssued' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockSharesOutstanding' xlink:label='us-gaap_CommonStockSharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CommonStockSharesOutstanding' use='optional' order='4.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CostOfGoodsAndServicesSold' xlink:label='us-gaap_CostOfGoodsAndServicesSold'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CostOfGoodsAndServicesSold' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit' xlink:label='us-gaap_GrossProfit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_GrossProfit' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SellingAndMarketingExpense' xlink:label='us-gaap_SellingAndMarketingExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_SellingAndMarketingExpense' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ResearchAndDevelopmentExpense' xlink:label='us-gaap_ResearchAndDevelopmentExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ResearchAndDevelopmentExpense' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GeneralAndAdministrativeExpense' xlink:label='us-gaap_GeneralAndAdministrativeExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_GeneralAndAdministrativeExpense' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingIncomeLoss' xlink:label='us-gaap_OperatingIncomeLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingIncomeLoss' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherInterestAndDividendIncome' xlink:label='us-gaap_OtherInterestAndDividendIncome'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OtherInterestAndDividendIncome' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RoyaltyIncomeNonoperating' xlink:label='us-gaap_RoyaltyIncomeNonoperating'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_RoyaltyIncomeNonoperating' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherNonoperatingIncomeExpense' xlink:label='us-gaap_OtherNonoperatingIncomeExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OtherNonoperatingIncomeExpense' use='optional' order='10.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' use='optional' order='11.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeTaxExpenseBenefit' use='optional' order='12.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss' xlink:label='us-gaap_ProfitLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ProfitLoss' use='optional' order='13.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic' xlink:label='us-gaap_EarningsPerShareBasic'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EarningsPerShareBasic' use='optional' order='14.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted' xlink:label='us-gaap_EarningsPerShareDiluted'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EarningsPerShareDiluted' use='optional' order='15.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract' xlink:label='us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract' use='optional' order='16.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' xlink:label='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' use='optional' order='17.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeNetOfTax' xlink:label='us-gaap_ComprehensiveIncomeNetOfTax'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ComprehensiveIncomeNetOfTax' use='optional' order='18.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax' xlink:label='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis' xlink:label='us-gaap_StatementEquityComponentsAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementEquityComponentsAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember' xlink:label='us-gaap_CommonStockMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_CommonStockMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdditionalPaidInCapitalMember' xlink:label='us-gaap_AdditionalPaidInCapitalMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_AdditionalPaidInCapitalMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ComprehensiveIncomeMember' xlink:label='us-gaap_ComprehensiveIncomeMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_ComprehensiveIncomeMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RetainedEarningsMember' xlink:label='us-gaap_RetainedEarningsMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_RetainedEarningsMember' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_EquityComponentDomain' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' xlink:label='us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/periodStartLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding' xlink:label='us-gaap_SharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_SharesOutstanding' use='optional' order='2.0' preferredLabel='http://www.xbrl.org/2003/role/periodStartLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised' xlink:label='us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' xlink:label='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions' xlink:label='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' xlink:label='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation' xlink:label='us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockOptionPlanExpense' xlink:label='us-gaap_StockOptionPlanExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockOptionPlanExpense' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodValue' xlink:label='us-gaap_StockRepurchasedAndRetiredDuringPeriodValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockRepurchasedAndRetiredDuringPeriodValue' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockRepurchasedAndRetiredDuringPeriodShares' xlink:label='us-gaap_StockRepurchasedAndRetiredDuringPeriodShares'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockRepurchasedAndRetiredDuringPeriodShares' use='optional' order='10.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' xlink:label='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax' use='optional' order='11.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DividendsCommonStockCash' xlink:label='us-gaap_DividendsCommonStockCash'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_DividendsCommonStockCash' use='optional' order='12.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss' xlink:label='us-gaap_ProfitLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ProfitLoss' use='optional' order='13.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest' xlink:label='us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest_1' use='optional' order='14.0' preferredLabel='http://www.xbrl.org/2003/role/periodEndLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharesOutstanding' xlink:label='us-gaap_SharesOutstanding_1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_SharesOutstanding_1' use='optional' order='15.0' preferredLabel='http://www.xbrl.org/2003/role/periodEndLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss' xlink:label='us-gaap_ProfitLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ProfitLoss' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:label='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Depreciation' xlink:label='us-gaap_Depreciation'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_Depreciation' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AmortizationOfIntangibleAssets' xlink:label='us-gaap_AmortizationOfIntangibleAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_AmortizationOfIntangibleAssets' use='optional' order='2.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProvisionForDoubtfulAccounts' xlink:label='us-gaap_ProvisionForDoubtfulAccounts'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_ProvisionForDoubtfulAccounts' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense' xlink:label='us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GainLossOnDispositionOfAssets' xlink:label='us-gaap_GainLossOnDispositionOfAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract' xlink:to='us-gaap_GainLossOnDispositionOfAssets' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredIncomeTaxExpenseBenefit' xlink:label='us-gaap_DeferredIncomeTaxExpenseBenefit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_DeferredIncomeTaxExpenseBenefit' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensation' xlink:label='us-gaap_ShareBasedCompensation'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensation' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' xlink:label='us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable' xlink:label='us-gaap_IncreaseDecreaseInAccountsReceivable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncreaseDecreaseInAccountsReceivable' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInOtherReceivables' xlink:label='us-gaap_IncreaseDecreaseInOtherReceivables'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncreaseDecreaseInOtherReceivables' use='optional' order='8.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInInventories' xlink:label='us-gaap_IncreaseDecreaseInInventories'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncreaseDecreaseInInventories' use='optional' order='9.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' xlink:label='us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets' use='optional' order='10.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccountsPayable' xlink:label='us-gaap_IncreaseDecreaseInAccountsPayable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncreaseDecreaseInAccountsPayable' use='optional' order='11.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncreaseDecreaseInAccruedLiabilities' xlink:label='us-gaap_IncreaseDecreaseInAccruedLiabilities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncreaseDecreaseInAccruedLiabilities' use='optional' order='12.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' xlink:label='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense' use='optional' order='13.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInOperatingActivities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInOperatingActivities' use='optional' order='14.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract' use='optional' order='15.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' xlink:label='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_PaymentsToAcquirePropertyPlantAndEquipment' use='optional' order='16.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsToAcquireIntangibleAssets' xlink:label='us-gaap_PaymentsToAcquireIntangibleAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_PaymentsToAcquireIntangibleAssets' use='optional' order='17.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInInvestingActivities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInInvestingActivities' use='optional' order='18.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract' use='optional' order='19.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProceedsFromIssuanceOfCommonStock' xlink:label='us-gaap_ProceedsFromIssuanceOfCommonStock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ProceedsFromIssuanceOfCommonStock' use='optional' order='20.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsForRepurchaseOfCommonStock' xlink:label='us-gaap_PaymentsForRepurchaseOfCommonStock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_PaymentsForRepurchaseOfCommonStock' use='optional' order='21.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PaymentsOfDividends' xlink:label='us-gaap_PaymentsOfDividends'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_PaymentsOfDividends' use='optional' order='22.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities' xlink:label='us-gaap_NetCashProvidedByUsedInFinancingActivities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_NetCashProvidedByUsedInFinancingActivities' use='optional' order='23.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents' xlink:label='us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents' use='optional' order='24.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' xlink:label='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect' use='optional' order='25.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CashAndCashEquivalentsAtCarryingValue' use='optional' order='26.0' preferredLabel='http://www.xbrl.org/2003/role/periodStartLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue' xlink:label='us-gaap_CashAndCashEquivalentsAtCarryingValue_1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CashAndCashEquivalentsAtCarryingValue_1' use='optional' order='27.0' preferredLabel='http://www.xbrl.org/2003/role/periodEndLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxesPaid' xlink:label='us-gaap_IncomeTaxesPaid'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeTaxesPaid' use='optional' order='28.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestPaid' xlink:label='us-gaap_InterestPaid'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InterestPaid' use='optional' order='29.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SignificantAccountingPoliciesTextBlock' xlink:label='us-gaap_SignificantAccountingPoliciesTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_SignificantAccountingPoliciesTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SupplementalBalanceSheetDisclosuresTextBlock' xlink:label='us-gaap_SupplementalBalanceSheetDisclosuresTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_SupplementalBalanceSheetDisclosuresTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_QuarterlyFinancialInformationTextBlock' xlink:label='us-gaap_QuarterlyFinancialInformationTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_QuarterlyFinancialInformationTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipment" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipment"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipment">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock' xlink:label='us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebt" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote5LongTermDebt"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebt">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebtTextBlock' xlink:label='us-gaap_LongTermDebtTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_LongTermDebtTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingencies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote6CommitmentsAndContingencies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingencies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock' xlink:label='us-gaap_CommitmentsAndContingenciesDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_CommitmentsAndContingenciesDisclosureTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxes" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxes"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxes">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxDisclosureTextBlock' xlink:label='us-gaap_IncomeTaxDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_IncomeTaxDisclosureTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8Options" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8Options"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8Options">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock' xlink:label='us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformation" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote9GeographicInformation"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformation">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GeographicInformationTextBlock' xlink:label='fil_GeographicInformationTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='fil_GeographicInformationTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformation" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote10GeographicLongLivedAssetsInformation"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformation">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GeographicLongLivedAssetsInformationTextBlock' xlink:label='fil_GeographicLongLivedAssetsInformationTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='fil_GeographicLongLivedAssetsInformationTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegion" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegion"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegion">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_RevenuesbyproductcategoryandregionTextBlock' xlink:label='fil_RevenuesbyproductcategoryandregionTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='fil_RevenuesbyproductcategoryandregionTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitments" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote12ProductSaleAndPurchaseCommitments"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitments">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ProductSaleAndPurchaseCommitmentsTextBlock' xlink:label='fil_ProductSaleAndPurchaseCommitmentsTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='fil_ProductSaleAndPurchaseCommitmentsTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlans" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote13EmployeeBenefitPlans"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlans">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock' xlink:label='us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14Leases" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14Leases"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14Leases">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeasesTextBlock' xlink:label='us-gaap_LesseeOperatingLeasesTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_LesseeOperatingLeasesTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IntangibleAssetsDisclosureTextBlock' xlink:label='us-gaap_IntangibleAssetsDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_IntangibleAssetsDisclosureTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShare" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote16EarningsPerShare"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShare">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareTextBlock' xlink:label='us-gaap_EarningsPerShareTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_EarningsPerShareTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncements" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote17RecentAccountingPronouncements"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncements">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock' xlink:label='us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote18SubsequentEvents" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote18SubsequentEvents"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote18SubsequentEvents">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DisclosureTextBlockAbstract' xlink:label='us-gaap_DisclosureTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SubsequentEventsTextBlock' xlink:label='us-gaap_SubsequentEventsTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_DisclosureTextBlockAbstract' xlink:to='us-gaap_SubsequentEventsTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UseOfEstimates' xlink:label='us-gaap_UseOfEstimates'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_UseOfEstimates' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConsolidationPolicyTextBlock' xlink:label='us-gaap_ConsolidationPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_ConsolidationPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CashAndCashEquivalentsPolicyTextBlock' xlink:label='us-gaap_CashAndCashEquivalentsPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_CashAndCashEquivalentsPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock' xlink:label='us-gaap_ConcentrationRiskDisclosureTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_ConcentrationRiskDisclosureTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ReceivablesPolicyTextBlock' xlink:label='us-gaap_ReceivablesPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_ReceivablesPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryPolicyTextBlock' xlink:label='us-gaap_InventoryPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_InventoryPolicyTextBlock' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/terseLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentPolicyTextBlock' xlink:label='us-gaap_PropertyPlantAndEquipmentPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock' xlink:label='us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock' xlink:label='us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy' xlink:label='us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueRecognitionPolicyTextBlock' xlink:label='us-gaap_RevenueRecognitionPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_RevenueRecognitionPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxPolicyTextBlock' xlink:label='us-gaap_IncomeTaxPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_IncomeTaxPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LegalCostsPolicyTextBlock' xlink:label='us-gaap_LegalCostsPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_LegalCostsPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerSharePolicyTextBlock' xlink:label='us-gaap_EarningsPerSharePolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_EarningsPerSharePolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PresentationOfSalesAndSimilarTaxesTextBlock' xlink:label='fil_PresentationOfSalesAndSimilarTaxesTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='fil_PresentationOfSalesAndSimilarTaxesTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock' xlink:label='us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PolicyTextBlockAbstract' xlink:label='us-gaap_PolicyTextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock' xlink:label='us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PolicyTextBlockAbstract' xlink:to='us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock' xlink:label='us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock' xlink:label='us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock' xlink:label='us-gaap_ScheduleOfInventoryCurrentTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfInventoryCurrentTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfGoodwillTextBlock' xlink:label='us-gaap_ScheduleOfGoodwillTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfGoodwillTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock' xlink:label='us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock' xlink:label='us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock' xlink:label='us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTextBlock' xlink:label='us-gaap_PropertyPlantAndEquipmentTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PropertyPlantAndEquipmentByLocationTextBlock' xlink:label='fil_PropertyPlantAndEquipmentByLocationTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='fil_PropertyPlantAndEquipmentByLocationTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock' xlink:label='us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock' xlink:label='us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock' xlink:label='us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock' xlink:label='us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock' xlink:label='us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock' xlink:label='us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock' xlink:label='us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ScheduleOfGeographicInformationTextBlock' xlink:label='fil_ScheduleOfGeographicInformationTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='fil_ScheduleOfGeographicInformationTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock' xlink:label='fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock' xlink:label='fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ScheduleofousrevenuesbyproductcategoryTextBlock' xlink:label='fil_ScheduleofousrevenuesbyproductcategoryTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='fil_ScheduleofousrevenuesbyproductcategoryTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock' xlink:label='fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TableTextBlockSupplementAbstract' xlink:label='us-gaap_TableTextBlockSupplementAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock' xlink:label='us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TableTextBlockSupplementAbstract' xlink:to='us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:label='us-gaap_PropertyPlantAndEquipmentByTypeAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_PropertyPlantAndEquipmentByTypeAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentTypeDomain' xlink:label='us-gaap_PropertyPlantAndEquipmentTypeDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:to='us-gaap_PropertyPlantAndEquipmentTypeDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingAndBuildingImprovementsMember' xlink:label='us-gaap_BuildingAndBuildingImprovementsMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:to='us-gaap_BuildingAndBuildingImprovementsMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquipmentMember' xlink:label='us-gaap_EquipmentMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_PropertyPlantAndEquipmentByTypeAxis' xlink:to='us-gaap_EquipmentMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis' xlink:label='srt_RangeAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_RangeAxis' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember' xlink:label='srt_RangeMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_RangeAxis' xlink:to='srt_RangeMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember' xlink:label='srt_MinimumMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_RangeAxis' xlink:to='srt_MinimumMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember' xlink:label='srt_MaximumMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_RangeAxis' xlink:to='srt_MaximumMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentUsefulLife' xlink:label='us-gaap_PropertyPlantAndEquipmentUsefulLife'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PropertyPlantAndEquipmentUsefulLife' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeAxis' xlink:label='srt_RangeAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_RangeAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_RangeMember' xlink:label='srt_RangeMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_RangeAxis' xlink:to='srt_RangeMember' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MinimumMember' xlink:label='srt_MinimumMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_RangeAxis' xlink:to='srt_MinimumMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_MaximumMember' xlink:label='srt_MaximumMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_RangeAxis' xlink:to='srt_MaximumMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionAxis' xlink:label='fil_DistributionRightsAcquisitionAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='fil_DistributionRightsAcquisitionAxis' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionDomain' xlink:label='fil_DistributionRightsAcquisitionDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='fil_DistributionRightsAcquisitionAxis' xlink:to='fil_DistributionRightsAcquisitionDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CoopersurgicalIncMember' xlink:label='fil_CoopersurgicalIncMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='fil_DistributionRightsAcquisitionAxis' xlink:to='fil_CoopersurgicalIncMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetUsefulLife' xlink:label='us-gaap_FiniteLivedIntangibleAssetUsefulLife'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetUsefulLife' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD' xlink:label='fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD' xlink:label='fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1' xlink:label='us-gaap_FinitelivedIntangibleAssetsAcquired1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FinitelivedIntangibleAssetsAcquired1' use='optional' order='9.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense' xlink:label='us-gaap_AllocatedShareBasedCompensationExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AllocatedShareBasedCompensationExpense' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense' xlink:label='us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LitigationReserve' xlink:label='us-gaap_LitigationReserve'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LitigationReserve' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:label='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' xlink:label='us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:label='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsReceivableGrossCurrent' xlink:label='us-gaap_AccountsReceivableGrossCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AccountsReceivableGrossCurrent' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InterestReceivableAndOtherAssets' xlink:label='us-gaap_InterestReceivableAndOtherAssets'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InterestReceivableAndOtherAssets' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' xlink:label='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccountsAndOtherReceivablesNetCurrent' xlink:label='us-gaap_AccountsAndOtherReceivablesNetCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AccountsAndOtherReceivablesNetCurrent' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves' xlink:label='us-gaap_InventoryFinishedGoodsNetOfReserves'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryFinishedGoodsNetOfReserves' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryWorkInProcess' xlink:label='us-gaap_InventoryWorkInProcess'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryWorkInProcess' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryRawMaterials' xlink:label='us-gaap_InventoryRawMaterials'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryRawMaterials' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_InventoryNet' xlink:label='us-gaap_InventoryNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_InventoryNet' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill' xlink:label='us-gaap_Goodwill'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_Goodwill' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/periodStartLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillForeignCurrencyTranslationGainLoss' xlink:label='us-gaap_GoodwillForeignCurrencyTranslationGainLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_GoodwillForeignCurrencyTranslationGainLoss' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GoodwillImpairmentLoss' xlink:label='us-gaap_GoodwillImpairmentLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_GoodwillImpairmentLoss' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Goodwill' xlink:label='us-gaap_Goodwill_1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_Goodwill_1' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/periodEndLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedPatentsGross' xlink:label='us-gaap_FiniteLivedPatentsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_FiniteLivedPatentsGross' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedNoncompeteAgreementsGross' xlink:label='us-gaap_FiniteLivedNoncompeteAgreementsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_FiniteLivedNoncompeteAgreementsGross' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedTrademarksGross' xlink:label='us-gaap_FiniteLivedTrademarksGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_FiniteLivedTrademarksGross' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedCustomerRelationshipsGross' xlink:label='us-gaap_FiniteLivedCustomerRelationshipsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_FiniteLivedCustomerRelationshipsGross' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherFiniteLivedIntangibleAssetsGross' xlink:label='us-gaap_OtherFiniteLivedIntangibleAssetsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OtherFiniteLivedIntangibleAssetsGross' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' xlink:label='fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsGross' xlink:label='us-gaap_FiniteLivedIntangibleAssetsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_FiniteLivedIntangibleAssetsGross' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' xlink:label='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization' use='optional' order='8.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FiniteLivedIntangibleAssetsNet' xlink:label='us-gaap_FiniteLivedIntangibleAssetsNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_FiniteLivedIntangibleAssetsNet' use='optional' order='9.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedIncomeTaxesCurrent' xlink:label='us-gaap_AccruedIncomeTaxesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AccruedIncomeTaxesCurrent' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent' xlink:label='us-gaap_EmployeeRelatedLiabilitiesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EmployeeRelatedLiabilitiesCurrent' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LitigationReserveCurrent' xlink:label='us-gaap_LitigationReserveCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LitigationReserveCurrent' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OtherAccruedLiabilitiesCurrent' xlink:label='us-gaap_OtherAccruedLiabilitiesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OtherAccruedLiabilitiesCurrent' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AccruedLiabilitiesCurrent' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_GrossProfit' xlink:label='us-gaap_GrossProfit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_GrossProfit' use='optional' order='2.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss' xlink:label='us-gaap_ProfitLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ProfitLoss' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted' xlink:label='us-gaap_EarningsPerShareDiluted'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EarningsPerShareDiluted' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Land' xlink:label='us-gaap_Land'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_Land' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross' xlink:label='us-gaap_BuildingsAndImprovementsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_BuildingsAndImprovementsGross' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross' xlink:label='us-gaap_MachineryAndEquipmentGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_MachineryAndEquipmentGross' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset' xlink:label='us-gaap_OperatingLeaseRightOfUseAsset'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseRightOfUseAsset' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList' xlink:label='us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' use='optional' order='1.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConstructionInProgressGross' xlink:label='us-gaap_ConstructionInProgressGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ConstructionInProgressGross' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross' xlink:label='us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_PropertyPlantAndEquipmentGross' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:label='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' use='optional' order='8.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_U.S.AndCanadaMember' xlink:label='fil_U.S.AndCanadaMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='fil_U.S.AndCanadaMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EnglandAndAustraliaMember' xlink:label='fil_EnglandAndAustraliaMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='fil_EnglandAndAustraliaMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.sec.gov/country/2021/country-2021.xsd#country_IE' xlink:label='country_IE'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='country_IE' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_Land' xlink:label='us-gaap_Land'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_Land' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_BuildingsAndImprovementsGross' xlink:label='us-gaap_BuildingsAndImprovementsGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_BuildingsAndImprovementsGross' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_MachineryAndEquipmentGross' xlink:label='us-gaap_MachineryAndEquipmentGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_MachineryAndEquipmentGross' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset' xlink:label='us-gaap_OperatingLeaseRightOfUseAsset'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_OperatingLeaseRightOfUseAsset' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ConstructionInProgressGross' xlink:label='us-gaap_ConstructionInProgressGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ConstructionInProgressGross' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentGross' xlink:label='us-gaap_PropertyPlantAndEquipmentGross'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PropertyPlantAndEquipmentGross' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' xlink:label='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_PropertyPlantAndEquipmentNet' xlink:label='us-gaap_PropertyPlantAndEquipmentNet'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_PropertyPlantAndEquipmentNet' use='optional' order='8.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebtDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote5LongTermDebtDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebtDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LongTermDebt' xlink:label='us-gaap_LongTermDebt'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LongTermDebt' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingenciesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote6CommitmentsAndContingenciesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingenciesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProductWarrantyAccrual' xlink:label='us-gaap_ProductWarrantyAccrual'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ProductWarrantyAccrual' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsInventory' xlink:label='us-gaap_DeferredTaxAssetsInventory'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_DeferredTaxAssetsInventory' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' xlink:label='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' xlink:label='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DeferredTaxLiabilitiesDepreciationAndAmortization' xlink:label='fil_DeferredTaxLiabilitiesDepreciationAndAmortization'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_DeferredTaxLiabilitiesDepreciationAndAmortization' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DeferredTaxLiabilities' xlink:label='us-gaap_DeferredTaxLiabilities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_DeferredTaxLiabilities' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2009/role/negatedTotalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CurrentIncomeTaxExpenseBenefit' xlink:label='us-gaap_CurrentIncomeTaxExpenseBenefit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_CurrentIncomeTaxExpenseBenefit' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DeferredIncomeTaxExpense' xlink:label='fil_DeferredIncomeTaxExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_DeferredIncomeTaxExpense' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeTaxExpenseBenefit' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' xlink:label='us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes' xlink:label='us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential' xlink:label='us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities' xlink:label='us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities' use='optional' order='4.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' xlink:label='us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' xlink:label='fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_AdjustmentToDeferredTaxLiability' xlink:label='fil_AdjustmentToDeferredTaxLiability'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_AdjustmentToDeferredTaxLiability' use='optional' order='7.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxReconciliationOtherAdjustments' xlink:label='us-gaap_IncomeTaxReconciliationOtherAdjustments'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeTaxReconciliationOtherAdjustments' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeTaxExpenseBenefit' xlink:label='us-gaap_IncomeTaxExpenseBenefit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeTaxExpenseBenefit' use='optional' order='9.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' xlink:label='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2003/role/totalLabel'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions' xlink:label='us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AllocatedShareBasedCompensationExpense' xlink:label='us-gaap_AllocatedShareBasedCompensationExpense'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_AllocatedShareBasedCompensationExpense' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized' xlink:label='us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths' xlink:label='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition' xlink:label='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears' xlink:label='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition' xlink:label='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition' use='optional' order='10.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue' use='optional' order='11.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue' use='optional' order='12.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementEquityComponentsAxis' xlink:label='us-gaap_StatementEquityComponentsAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementEquityComponentsAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EquityComponentDomain' xlink:label='us-gaap_EquityComponentDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_EquityComponentDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_CommonStockMember' xlink:label='us-gaap_CommonStockMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementEquityComponentsAxis' xlink:to='us-gaap_CommonStockMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareGranted' xlink:label='fil_PriceRangePerShareGranted'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareGranted' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareExpired' xlink:label='fil_PriceRangePerShareExpired'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareExpired' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' xlink:label='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareExercised' xlink:label='fil_PriceRangePerShareExercised'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareExercised' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareOutstanding' xlink:label='fil_PriceRangePerShareOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareOutstanding' use='optional' order='8.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_PriceRangePerShareTotalExercisable' xlink:label='fil_PriceRangePerShareTotalExercisable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_PriceRangePerShareTotalExercisable' use='optional' order='10.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate' xlink:label='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1' xlink:label='us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1' use='optional' order='4.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementScenarioAxis' xlink:label='srt_StatementScenarioAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementScenarioAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ScenarioUnspecifiedDomain' xlink:label='srt_ScenarioUnspecifiedDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementScenarioAxis' xlink:to='srt_ScenarioUnspecifiedDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_Range1Member' xlink:label='fil_Range1Member'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementScenarioAxis' xlink:to='fil_Range1Member' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_Range2Member' xlink:label='fil_Range2Member'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementScenarioAxis' xlink:to='fil_Range2Member' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_WeightedAverageRemainingContractualLifeYears' xlink:label='fil_WeightedAverageRemainingContractualLifeYears'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_WeightedAverageRemainingContractualLifeYears' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' xlink:label='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' xlink:label='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' xlink:label='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1' use='optional' order='7.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CompanySalesInTheUnitedStates' xlink:label='fil_CompanySalesInTheUnitedStates'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_CompanySalesInTheUnitedStates' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CompanySalesInEurope' xlink:label='fil_CompanySalesInEurope'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_CompanySalesInEurope' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CompanySalesOther' xlink:label='fil_CompanySalesOther'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_CompanySalesOther' use='optional' order='3.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInTheUnitedStates' xlink:label='fil_LongLivedAssetsInTheUnitedStates'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_LongLivedAssetsInTheUnitedStates' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInEngland' xlink:label='fil_LongLivedAssetsInEngland'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_LongLivedAssetsInEngland' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInIreland' xlink:label='fil_LongLivedAssetsInIreland'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_LongLivedAssetsInIreland' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInAustralia' xlink:label='fil_LongLivedAssetsInAustralia'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_LongLivedAssetsInAustralia' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LongLivedAssetsInCanada' xlink:label='fil_LongLivedAssetsInCanada'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_LongLivedAssetsInCanada' use='optional' order='5.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GlobalMember' xlink:label='fil_GlobalMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='fil_GlobalMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_ProductOrServiceAxis' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ObstetricsMember' xlink:label='fil_ObstetricsMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_ObstetricsMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GynecologyElectrosurgeryUrologyMember' xlink:label='fil_GynecologyElectrosurgeryUrologyMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_GynecologyElectrosurgeryUrologyMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_NeonatalMember' xlink:label='fil_NeonatalMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_NeonatalMember' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_BloodPressureMonitoringandAccessoriesMember' xlink:label='fil_BloodPressureMonitoringandAccessoriesMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_BloodPressureMonitoringandAccessoriesMember' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_StatementGeographicalAxis' xlink:label='srt_StatementGeographicalAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_StatementGeographicalAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_SegmentGeographicalDomain' xlink:label='srt_SegmentGeographicalDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='srt_SegmentGeographicalDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_OusMember' xlink:label='fil_OusMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_StatementGeographicalAxis' xlink:to='fil_OusMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductOrServiceAxis' xlink:label='srt_ProductOrServiceAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='srt_ProductOrServiceAxis' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd#srt_ProductsAndServicesDomain' xlink:label='srt_ProductsAndServicesDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='srt_ProductsAndServicesDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_ObstetricsMember' xlink:label='fil_ObstetricsMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_ObstetricsMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_GynecologyElectrosurgeryUrologyMember' xlink:label='fil_GynecologyElectrosurgeryUrologyMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_GynecologyElectrosurgeryUrologyMember' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_NeonatalMember' xlink:label='fil_NeonatalMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_NeonatalMember' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_BloodPressureMonitoringandAccessoriesMember' xlink:label='fil_BloodPressureMonitoringandAccessoriesMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='srt_ProductOrServiceAxis' xlink:to='fil_BloodPressureMonitoringandAccessoriesMember' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' xlink:label='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_RoyaltyIncomeNonoperating' xlink:label='us-gaap_RoyaltyIncomeNonoperating'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_RoyaltyIncomeNonoperating' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ContractualObligation' xlink:label='us-gaap_ContractualObligation'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ContractualObligation' use='optional' order='2.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlansDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote13EmployeeBenefitPlansDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlansDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount' xlink:label='us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount' use='optional' order='1.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LesseeOperatingLeaseForParkingLotTermOfContract' xlink:label='fil_LesseeOperatingLeaseForParkingLotTermOfContract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_LesseeOperatingLeaseForParkingLotTermOfContract' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LesseeOperatingLeaseForAutomobileTermOfContract' xlink:label='fil_LesseeOperatingLeaseForAutomobileTermOfContract'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_LesseeOperatingLeaseForAutomobileTermOfContract' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI' xlink:label='fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseCost' xlink:label='us-gaap_OperatingLeaseCost'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseCost' use='optional' order='4.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseRightOfUseAsset' xlink:label='us-gaap_OperatingLeaseRightOfUseAsset'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseRightOfUseAsset' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList' xlink:label='us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_AccruedLiabilitiesCurrent' xlink:label='us-gaap_AccruedLiabilitiesCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList' xlink:to='us-gaap_AccruedLiabilitiesCurrent' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityCurrent' xlink:label='us-gaap_OperatingLeaseLiabilityCurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseLiabilityCurrent' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent' xlink:label='us-gaap_OperatingLeaseLiabilityNoncurrent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseLiabilityNoncurrent' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability' xlink:label='us-gaap_OperatingLeaseLiability'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseLiability' use='optional' order='5.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree' use='optional' order='3.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive' use='optional' order='5.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive' use='optional' order='6.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue' use='optional' order='7.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount' xlink:label='us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount' use='optional' order='8.0' preferredLabel='http://www.xbrl.org/2009/role/negatedLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseLiability' xlink:label='us-gaap_OperatingLeaseLiability'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseLiability' use='optional' order='9.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1' xlink:label='us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1' use='optional' order='10.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent' xlink:label='us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent' use='optional' order='11.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementTable' xlink:label='us-gaap_StatementTable'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_StatementTable' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionAxis' xlink:label='fil_DistributionRightsAcquisitionAxis'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='fil_DistributionRightsAcquisitionAxis' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_DistributionRightsAcquisitionDomain' xlink:label='fil_DistributionRightsAcquisitionDomain'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='fil_DistributionRightsAcquisitionAxis' xlink:to='fil_DistributionRightsAcquisitionDomain' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_CoopersurgicalIncMember' xlink:label='fil_CoopersurgicalIncMember'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='fil_DistributionRightsAcquisitionAxis' xlink:to='fil_CoopersurgicalIncMember' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_StatementLineItems' xlink:label='us-gaap_StatementLineItems'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementTable' xlink:to='us-gaap_StatementLineItems' use='optional' order='2.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_FinitelivedIntangibleAssetsAcquired1' xlink:label='us-gaap_FinitelivedIntangibleAssetsAcquired1'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='us-gaap_FinitelivedIntangibleAssetsAcquired1' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='utmd-20211231.xsd#fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' xlink:label='fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_StatementLineItems' xlink:to='fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' use='optional' order='2.0'/>
	</link:presentationLink>
	<link:roleRef roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails" xlink:type="simple" xlink:href="utmd-20211231.xsd#idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails"/>
	<link:presentationLink xlink:type="extended" xlink:role="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails">
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_TextBlockAbstract' xlink:label='us-gaap_TextBlockAbstract'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_ProfitLoss' xlink:label='us-gaap_ProfitLoss'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_ProfitLoss' use='optional' order='1.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' xlink:label='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_WeightedAverageNumberOfSharesOutstandingBasic' use='optional' order='2.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' xlink:label='us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment' use='optional' order='3.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' xlink:label='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding' use='optional' order='4.0'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareBasic' xlink:label='us-gaap_EarningsPerShareBasic'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EarningsPerShareBasic' use='optional' order='5.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
		<link:loc xlink:type='locator' xlink:href='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd#us-gaap_EarningsPerShareDiluted' xlink:label='us-gaap_EarningsPerShareDiluted'/>
		<link:presentationArc xlink:type='arc' xlink:arcrole='http://www.xbrl.org/2003/arcrole/parent-child' xlink:from='us-gaap_TextBlockAbstract' xlink:to='us-gaap_EarningsPerShareDiluted' use='optional' order='6.0' preferredLabel='http://www.xbrl.org/2003/role/verboseLabel'/>
	</link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>14
<FILENAME>utmd-20211231.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT
<TEXT>
<XBRL>
<?xml version='1.0' encoding='iso-8859-1'?>
<!-- Produced by EDGARsuite software, Advanced Computer Innovations, Inc., Copyright (C) 2008-2022 [PPXK9NDL3JZWVG89DFHW]. www.edgarsuite.com -->
<schema xmlns='http://www.w3.org/2001/XMLSchema' xmlns:country='http://xbrl.sec.gov/country/2021' xmlns:us-gaap='http://fasb.org/us-gaap/2021-01-31' xmlns:srt='http://fasb.org/srt/2021-01-31' xmlns:fil='http://www.utahmed.com/20211231' xmlns:dei='http://xbrl.sec.gov/dei/2021q4' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:xbrldt='http://xbrl.org/2005/xbrldt' targetNamespace='http://www.utahmed.com/20211231' xmlns:dtr-types='http://www.xbrl.org/dtr/type/2020-01-21' xmlns:link='http://www.xbrl.org/2003/linkbase' xmlns:xbrli='http://www.xbrl.org/2003/instance' elementFormDefault='qualified' attributeFormDefault='unqualified'>
	<annotation>
		<appinfo>
			<link:linkbaseRef xlink:type="simple" xlink:href="utmd-20211231_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
			<link:linkbaseRef xlink:type="simple" xlink:href="utmd-20211231_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
			<link:linkbaseRef xlink:type="simple" xlink:href="utmd-20211231_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
			<link:linkbaseRef xlink:type="simple" xlink:href="utmd-20211231_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase"/>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow" id="idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow">
				<link:definition>000070 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED CONDENSED STATEMENTS OF CASH FLOW</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8Options" id="idr_DisclosureNote8Options">
				<link:definition>000150 - Disclosure - Note 8 - Options</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure" id="idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure">
				<link:definition>000220 - Disclosure - Note 15 - CSI Distribution Agreement Purchase Disclosure</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails" id="idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails">
				<link:definition>000780 - Disclosure - Note 4 - Property and Equipment: Property, Plant and Equipment (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails" id="idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails">
				<link:definition>000920 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies">
				<link:definition>000410 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Translation of Foreign Currencies (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies">
				<link:definition>000270 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Principles of Consolidation (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables">
				<link:definition>000480 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingencies" id="idr_DisclosureNote6CommitmentsAndContingencies">
				<link:definition>000130 - Disclosure - Note 6 - Commitments and Contingencies</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails" id="idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails">
				<link:definition>000930 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables" id="idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables">
				<link:definition>000530 - Disclosure - Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails" id="idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails">
				<link:definition>000900 - Disclosure - Note 9 - Geographic Information: Schedule Of Geographic Information (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails" id="idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails">
				<link:definition>000820 - Disclosure - Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails" id="idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails">
				<link:definition>000840 - Disclosure - Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables" id="idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables">
				<link:definition>000570 - Disclosure - Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables">
				<link:definition>000430 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails" id="idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails">
				<link:definition>000940 - Disclosure - Note 12 - Product Sale and Purchase Commitments (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails">
				<link:definition>000700 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Legal Costs (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails">
				<link:definition>000660 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies">
				<link:definition>000280 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies">
				<link:definition>000360 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Revenue Recognition (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables" id="idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables">
				<link:definition>000620 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables" id="idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables">
				<link:definition>000590 - Disclosure - Note 9 - Geographic Information: Schedule Of Geographic Information (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables">
				<link:definition>000470 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies">
				<link:definition>000300 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Accounts Receivable (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables" id="idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables">
				<link:definition>000630 - Disclosure - Note 14 - Leases: Reconciliation of operating lease liabilities (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical" id="idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical">
				<link:definition>000030 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS - Parenthetical</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies">
				<link:definition>000370 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Income Taxes (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipment" id="idr_DisclosureNote4PropertyAndEquipment">
				<link:definition>000110 - Disclosure - Note 4 - Property and Equipment</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails">
				<link:definition>000710 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies">
				<link:definition>000330 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Long-lived Assets (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformation" id="idr_DisclosureNote9GeographicInformation">
				<link:definition>000160 - Disclosure - Note 9 - Geographic Information</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables" id="idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables">
				<link:definition>000580 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitments" id="idr_DisclosureNote12ProductSaleAndPurchaseCommitments">
				<link:definition>000190 - Disclosure - Note 12 - Product Sale and Purchase Commitments</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails">
				<link:definition>000680 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables" id="idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables">
				<link:definition>000560 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables" id="idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables">
				<link:definition>000510 - Disclosure - Note 4 - Property and Equipment: Property Plant and Equipment by Location (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPolicies">
				<link:definition>000080 - Disclosure - Note 1 - Summary of Significant Accounting Policies</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables" id="idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables">
				<link:definition>000640 - Disclosure - Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails" id="idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails">
				<link:definition>000990 - Disclosure - Note 15 - CSI Distribution Agreement Purchase Disclosure (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails" id="idr_DisclosureNote14LeasesDetails">
				<link:definition>000960 - Disclosure - Note 14 - Leases (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails">
				<link:definition>000740 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails">
				<link:definition>000760 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables" id="idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables">
				<link:definition>000550 - Disclosure - Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebtDetails" id="idr_DisclosureNote5LongTermDebtDetails">
				<link:definition>000800 - Disclosure - Note 5 - Long-term Debt (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables" id="idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables">
				<link:definition>000490 - Disclosure - Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegion" id="idr_DisclosureNote11RevenuesByProductCategoryAndRegion">
				<link:definition>000180 - Disclosure - Note 11 - Revenues By Product Category And Region</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails">
				<link:definition>000750 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncements" id="idr_DisclosureNote17RecentAccountingPronouncements">
				<link:definition>000240 - Disclosure - Note 17 - Recent Accounting Pronouncements</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets" id="idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets">
				<link:definition>000020 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingenciesDetails" id="idr_DisclosureNote6CommitmentsAndContingenciesDetails">
				<link:definition>000810 - Disclosure - Note 6 - Commitments and Contingencies (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxes" id="idr_DisclosureNote7IncomeTaxes">
				<link:definition>000140 - Disclosure - Note 7 - Income Taxes</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts">
				<link:definition>000090 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails">
				<link:definition>000730 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity" id="idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity">
				<link:definition>000060 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF STOCKHOLDERS&apos; EQUITY</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables" id="idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables">
				<link:definition>000600 - Disclosure - Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails" id="idr_DisclosureNote8OptionsDetails">
				<link:definition>000860 - Disclosure - Note 8 - Options (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies" id="idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies">
				<link:definition>000420 - Disclosure - Note 17 - Recent Accounting Pronouncements: New Accounting Pronouncements, Policy (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebt" id="idr_DisclosureNote5LongTermDebt">
				<link:definition>000120 - Disclosure - Note 5 - Long-term Debt</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies">
				<link:definition>000320 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables">
				<link:definition>000460 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables" id="idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables">
				<link:definition>000610 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails" id="idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails">
				<link:definition>000970 - Disclosure - Note 14 - Leases: Reconciliation of operating lease liabilities (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies">
				<link:definition>000290 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Concentration of Credit Risk (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables" id="idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables">
				<link:definition>000520 - Disclosure - Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation" id="idr_DocumentDocumentAndEntityInformation">
				<link:definition>000010 - Document - Document and Entity Information</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlans" id="idr_DisclosureNote13EmployeeBenefitPlans">
				<link:definition>000200 - Disclosure - Note 13 - Employee Benefit Plans</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformation" id="idr_DisclosureNote10GeographicLongLivedAssetsInformation">
				<link:definition>000170 - Disclosure - Note 10 - Geographic Long-Lived Assets Information</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies">
				<link:definition>000380 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Legal Costs (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails" id="idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails">
				<link:definition>001000 - Disclosure - Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables" id="idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables">
				<link:definition>000540 - Disclosure - Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies">
				<link:definition>000390 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Earnings Per Share (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails" id="idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails">
				<link:definition>000910 - Disclosure - Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies">
				<link:definition>000340 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails" id="idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails">
				<link:definition>000870 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails">
				<link:definition>000720 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies">
				<link:definition>000260 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Use of Estimates in The Preparation of Financial Statements (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables">
				<link:definition>000440 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables" id="idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables">
				<link:definition>000450 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables" id="idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables">
				<link:definition>000650 - Disclosure - Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies">
				<link:definition>000400 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Presentation of Sales and Similar Taxes (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails" id="idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails">
				<link:definition>000850 - Disclosure - Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails" id="idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails">
				<link:definition>000770 - Disclosure - Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails" id="idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails">
				<link:definition>000890 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails" id="idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails">
				<link:definition>000790 - Disclosure - Note 4 - Property and Equipment: Property Plant and Equipment by Location (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical" id="idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical">
				<link:definition>000050 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME - Parenthetical</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome" id="idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome">
				<link:definition>000040 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies">
				<link:definition>000350 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails" id="idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails">
				<link:definition>000980 - Disclosure - Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails" id="idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails">
				<link:definition>000830 - Disclosure - Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote18SubsequentEvents" id="idr_DisclosureNote18SubsequentEvents">
				<link:definition>000250 - Disclosure - Note 18 - Subsequent Events</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies">
				<link:definition>000310 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Inventories (Policies)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShare" id="idr_DisclosureNote16EarningsPerShare">
				<link:definition>000230 - Disclosure - Note 16 - Earnings Per Share</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote14Leases" id="idr_DisclosureNote14Leases">
				<link:definition>000210 - Disclosure - Note 14 - Leases</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited" id="idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited">
				<link:definition>000100 - Disclosure - Note 3 - Quarterly Results of Operations (Unaudited)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlansDetails" id="idr_DisclosureNote13EmployeeBenefitPlansDetails">
				<link:definition>000950 - Disclosure - Note 13 - Employee Benefit Plans (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails" id="idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails">
				<link:definition>000880 - Disclosure - Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails">
				<link:definition>000690 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Income Taxes (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails" id="idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails">
				<link:definition>000670 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Details)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
			<link:roleType roleURI="http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables" id="idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables">
				<link:definition>000500 - Disclosure - Note 4 - Property and Equipment: Property, Plant and Equipment (Tables)</link:definition>
				<link:usedOn>link:presentationLink</link:usedOn>
				<link:usedOn>link:definitionLink</link:usedOn>
				<link:usedOn>link:calculationLink</link:usedOn>
			</link:roleType>
		</appinfo>
	</annotation>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2005/xbrldt-2005.xsd' namespace='http://xbrl.org/2005/xbrldt'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2005/xbrldt-2005.xsd' namespace='http://xbrl.org/2005/xbrldt'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2005/xbrldt-2005.xsd' namespace='http://xbrl.org/2005/xbrldt'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2005/xbrldt-2005.xsd' namespace='http://xbrl.org/2005/xbrldt'/>
	<import schemaLocation='http://www.xbrl.org/2005/xbrldt-2005.xsd' namespace='http://xbrl.org/2005/xbrldt'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2005/xbrldt-2005.xsd' namespace='http://xbrl.org/2005/xbrldt'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2005/xbrldt-2005.xsd' namespace='http://xbrl.org/2005/xbrldt'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import schemaLocation='http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd' namespace='http://www.xbrl.org/2003/instance'/>
	<import namespace='http://fasb.org/us-gaap/2021-01-31' schemaLocation='https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd' />
	<import namespace='http://xbrl.sec.gov/dei/2021q4' schemaLocation='https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd' />
	<import namespace='http://www.xbrl.org/dtr/type/2020-01-21' schemaLocation='https://www.xbrl.org/dtr/type/2020-01-21/types.xsd' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_U.S.AndCanadaMember' name='U.S.AndCanadaMember' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_EnglandAndAustraliaMember' name='EnglandAndAustraliaMember' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_Range1Member' name='Range1Member' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_Range2Member' name='Range2Member' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='debit' id='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions' name='CommonStockReceivedAndRetiredUponExerciseOfStockOptions' />
	<element nillable='true' type='xbrli:sharesItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' name='CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' xbrli:balance='debit' id='fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' name='FiniteLivedRegulatoryApprovalsAndProductCertificationsGross' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' xbrli:balance='credit' id='fil_DeferredTaxLiabilitiesDepreciationAndAmortization' name='DeferredTaxLiabilitiesDepreciationAndAmortization' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='debit' id='fil_DeferredIncomeTaxExpense' name='DeferredIncomeTaxExpense' />
	<element nillable='true' type='xbrli:stringItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_PriceRangePerShareGranted' name='PriceRangePerShareGranted' />
	<element nillable='true' type='xbrli:stringItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_PriceRangePerShareExpired' name='PriceRangePerShareExpired' />
	<element nillable='true' type='xbrli:stringItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_PriceRangePerShareExercised' name='PriceRangePerShareExercised' />
	<element nillable='true' type='xbrli:stringItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_PriceRangePerShareOutstanding' name='PriceRangePerShareOutstanding' />
	<element nillable='true' type='xbrli:stringItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_PriceRangePerShareTotalExercisable' name='PriceRangePerShareTotalExercisable' />
	<element nillable='true' type='xbrli:decimalItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' id='fil_WeightedAverageRemainingContractualLifeYears' name='WeightedAverageRemainingContractualLifeYears' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='credit' id='fil_CompanySalesInTheUnitedStates' name='CompanySalesInTheUnitedStates' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='credit' id='fil_CompanySalesInEurope' name='CompanySalesInEurope' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='credit' id='fil_CompanySalesOther' name='CompanySalesOther' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' xbrli:balance='debit' id='fil_LongLivedAssetsInTheUnitedStates' name='LongLivedAssetsInTheUnitedStates' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' xbrli:balance='debit' id='fil_LongLivedAssetsInEngland' name='LongLivedAssetsInEngland' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' xbrli:balance='debit' id='fil_LongLivedAssetsInIreland' name='LongLivedAssetsInIreland' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' xbrli:balance='debit' id='fil_LongLivedAssetsInAustralia' name='LongLivedAssetsInAustralia' />
	<element nillable='true' type='xbrli:pureItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' id='fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD' name='ForeignCurrencyExchangeRateTranslationAUDtoUSD' />
	<element nillable='true' type='xbrli:pureItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' id='fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD' name='ForeignCurrencyExchangeRateTranslationGBPtoUSD' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' xbrli:balance='debit' id='fil_LongLivedAssetsInCanada' name='LongLivedAssetsInCanada' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_GeographicInformationTextBlock' name='GeographicInformationTextBlock' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_GeographicLongLivedAssetsInformationTextBlock' name='GeographicLongLivedAssetsInformationTextBlock' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_ProductSaleAndPurchaseCommitmentsTextBlock' name='ProductSaleAndPurchaseCommitmentsTextBlock' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_PresentationOfSalesAndSimilarTaxesTextBlock' name='PresentationOfSalesAndSimilarTaxesTextBlock' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_PropertyPlantAndEquipmentByLocationTextBlock' name='PropertyPlantAndEquipmentByLocationTextBlock' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_ScheduleOfGeographicInformationTextBlock' name='ScheduleOfGeographicInformationTextBlock' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock' name='ScheduleOfLongLivedAssetsByGeographicAreaTextBlock' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_RevenuesbyproductcategoryandregionTextBlock' name='RevenuesbyproductcategoryandregionTextBlock' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock' name='ScheduleofglobalrevenuesbyproductcategoryTextBlock' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_ScheduleofousrevenuesbyproductcategoryTextBlock' name='ScheduleofousrevenuesbyproductcategoryTextBlock' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='debit' id='fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' name='TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_GlobalMember' name='GlobalMember' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_OusMember' name='OusMember' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_ObstetricsMember' name='ObstetricsMember' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_GynecologyElectrosurgeryUrologyMember' name='GynecologyElectrosurgeryUrologyMember' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_NeonatalMember' name='NeonatalMember' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_BloodPressureMonitoringandAccessoriesMember' name='BloodPressureMonitoringandAccessoriesMember' />
	<element abstract='true' nillable='true' type='xbrli:stringItemType' substitutionGroup='xbrldt:dimensionItem' xbrli:periodType='duration' id='fil_DistributionRightsAcquisitionAxis' name='DistributionRightsAcquisitionAxis' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_DistributionRightsAcquisitionDomain' name='DistributionRightsAcquisitionDomain' />
	<element abstract='true' nillable='true' type='dtr-types:domainItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_CoopersurgicalIncMember' name='CoopersurgicalIncMember' />
	<element nillable='true' type='xbrli:decimalItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' name='RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' xbrli:balance='debit' id='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears' name='EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears' />
	<element nillable='true' type='xbrli:durationItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition' name='EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition' />
	<element nillable='true' type='dtr-types:textBlockItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock' name='ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock' />
	<element nillable='true' type='xbrli:durationItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_LesseeOperatingLeaseForParkingLotTermOfContract' name='LesseeOperatingLeaseForParkingLotTermOfContract' />
	<element nillable='true' type='xbrli:durationItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_LesseeOperatingLeaseForAutomobileTermOfContract' name='LesseeOperatingLeaseForAutomobileTermOfContract' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='instant' xbrli:balance='debit' id='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths' name='EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths' />
	<element nillable='true' type='xbrli:durationItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' id='fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition' name='EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='credit' id='fil_AdjustmentToDeferredTaxLiability' name='AdjustmentToDeferredTaxLiability' />
	<element nillable='true' type='xbrli:monetaryItemType' substitutionGroup='xbrli:item' xbrli:periodType='duration' xbrli:balance='debit' id='fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI' name='LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI' />
</schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386417641160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document and Entity Information - USD ($)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Mar. 24, 2022</div></th>
<th class="th"><div>Jun. 30, 2021</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" 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">UTAH MEDICAL PRODUCTS INC<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0000706698<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-K<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Dec. 31,  2021<span></span>
</td>
<td class="text">&#160;<span></span>
</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_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>
<td class="text">&#160;<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_dei_TradingSymbol', window );">Trading Symbol</a></td>
<td class="text">UTMD<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_EntityTaxIdentificationNumber', window );">Entity Tax Identification Number</a></td>
<td class="text">87-0342734<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,654,987<span></span>
</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_dei_EntityPublicFloat', window );">Entity Public Float</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 286,135,700<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_dei_EntityFilerCategory', window );">Entity Filer Category</a></td>
<td class="text">Non-accelerated Filer<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_EntityCurrentReportingStatus', window );">Entity Current Reporting Status</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_EntityVoluntaryFilers', window );">Entity Voluntary Filers</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_EntityWellKnownSeasonedIssuer', window );">Entity Well-Known Seasoned Issuer</a></td>
<td class="text">No<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_EntitySmallBusiness', window );">Entity Small Business</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_EntityEmergingGrowthCompany', window );">Entity Emerging Growth Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_DocumentAnnualReport', window );">Document Annual Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">001-12575<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_EntityIncorporationStateCountryCode', window );">Entity Incorporation, State or Country Code</a></td>
<td class="text">UT<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_EntityAddressAddressLine1', window );">Entity Address, Address Line One</a></td>
<td class="text">7043 South 300 West<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_EntityAddressCityOrTown', window );">Entity Address, City or Town</a></td>
<td class="text">Midvale<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_EntityAddressStateOrProvince', window );">Entity Address, State or Province</a></td>
<td class="text">UT<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_EntityAddressPostalZipCode', window );">Entity Address, Postal Zip Code</a></td>
<td class="text">84047<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_CityAreaCode', window );">City Area Code</a></td>
<td class="text">801<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_LocalPhoneNumber', window );">Local Phone Number</a></td>
<td class="text">566-1200<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_Security12bTitle', window );">Title of 12(b) Security</a></td>
<td class="text">Common stock, $0.01 par value<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_SecurityExchangeName', window );">Security Exchange Name</a></td>
<td class="text">NASDAQ<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_IcfrAuditorAttestationFlag', window );">ICFR Auditor Attestation Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_DocumentsIncorporatedByReferenceTextBlock', window );">Documents Incorporated by Reference</a></td>
<td class="text">The Company&#8217;s definitive proxy statement for the Annual Meeting of Stockholders is incorporated by reference into Part III, Item 10, 11, 12, 13 and 14 of this Form 10-K.<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_AmendmentFlag', window );">Amendment Flag</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_DocumentFiscalYearFocus', window );">Document Fiscal Year Focus</a></td>
<td class="text">2021<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_DocumentFiscalPeriodFocus', window );">Document Fiscal Period Focus</a></td>
<td class="text">FY<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_AuditorName', window );">Auditor Name</a></td>
<td class="text">Haynie &amp; Company<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_dei_AuditorLocation', window );">Auditor Location</a></td>
<td class="text">Salt Lake City, Utah<span></span>
</td>
<td class="text">&#160;<span></span>
</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_dei_AuditorFirmId', window );">Auditor Firm ID</a></td>
<td class="text">457<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_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>Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.</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_AuditorFirmId">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>PCAOB issued Audit Firm Identifier</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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_AuditorFirmId</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:nonemptySequenceNumberItemType</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_AuditorLocation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_AuditorLocation</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:internationalNameItemType</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_AuditorName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_AuditorName</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:internationalNameItemType</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_CityAreaCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 code of city</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_CityAreaCode</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_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_DocumentAnnualReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Boolean flag that is true only for a form used as an annual report.</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 Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_DocumentAnnualReport</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_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>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</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 YYYY 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_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>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-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_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Boolean flag that is true only for a form used as a transition report.</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 Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-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_DocumentTransitionReport</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_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_DocumentsIncorporatedByReferenceTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Documents incorporated by reference.</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 Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-23<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_DocumentsIncorporatedByReferenceTextBlock</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>dtr-types: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_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Address Line 1 such as Attn, Building Name, Street Name</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_EntityAddressAddressLine1</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_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Name of the City or Town</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_EntityAddressCityOrTown</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_EntityAddressPostalZipCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Code for the postal or zip code</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_EntityAddressPostalZipCode</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_EntityAddressStateOrProvince">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Name of the state or province.</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_EntityAddressStateOrProvince</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:stateOrProvinceItemType</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 Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<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_EntityEmergingGrowthCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 if registrant meets the emerging growth company criteria.</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 Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<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_EntityEmergingGrowthCompany</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_EntityFileNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.</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_EntityFileNumber</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:fileNumberItemType</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: Large Accelerated Filer, Accelerated Filer, Non-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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<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_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_EntityIncorporationStateCountryCode">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Two-character EDGAR code representing the state or country of incorporation.</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_EntityIncorporationStateCountryCode</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:edgarStateCountryItemType</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_EntityInteractiveDataCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).</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 S-T<br> -Number 232<br> -Section 405<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_EntityInteractiveDataCurrent</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_EntityPublicFloat">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.</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_EntityPublicFloat</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: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_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 Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<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_EntityShellCompany">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.</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 Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<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_EntityShellCompany</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_EntitySmallBusiness">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Indicates that the company is a Smaller Reporting Company (SRC).</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 Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<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_EntitySmallBusiness</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_EntityTaxIdentificationNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.</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 Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b-2<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_EntityTaxIdentificationNumber</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:employerIdItemType</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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Securities Act<br> -Number 230<br> -Section 405<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_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_IcfrAuditorAttestationFlag">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-K<br> -Number 249<br> -Section 310<br><br>Reference 2: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 20-F<br> -Number 249<br> -Section 220<br> -Subsection f<br><br>Reference 3: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 40-F<br> -Number 249<br> -Section 240<br> -Subsection f<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_IcfrAuditorAttestationFlag</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_LocalPhoneNumber">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Local phone number for 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;">dei_LocalPhoneNumber</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_Security12bTitle">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Title of a 12(b) registered security.</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 Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection b<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_Security12bTitle</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:securityTitleItemType</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_SecurityExchangeName">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Name of the Exchange on which a security is registered.</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 Exchange Act<br> -Number 240<br> -Section 12<br> -Subsection d1-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_SecurityExchangeName</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:edgarExchangeCodeItemType</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>dei:tradingSymbolItemType</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>16
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386415498488">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_AssetsCurrentAbstract', window );"><strong>Current assets</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash</a></td>
<td class="nump">$ 60,974<span></span>
</td>
<td class="nump">$ 51,590<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_us-gaap_AccountsReceivableNetCurrent', window );">Accounts &amp; other receivables, net (note 2)</a></td>
<td class="nump">5,132<span></span>
</td>
<td class="nump">4,104<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_us-gaap_InventoryNet', window );">Inventories (note 2)</a></td>
<td class="nump">6,596<span></span>
</td>
<td class="nump">6,222<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_us-gaap_OtherAssetsCurrent', window );">Prepaid expenses and other current assets</a></td>
<td class="nump">456<span></span>
</td>
<td class="nump">346<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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">73,158<span></span>
</td>
<td class="nump">62,262<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_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net (notes 4 and 10)</a></td>
<td class="nump">11,067<span></span>
</td>
<td class="nump">11,326<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_us-gaap_Goodwill', window );">Goodwill</a></td>
<td class="nump">14,098<span></span>
</td>
<td class="nump">14,164<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_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Other intangible assets (note 2)</a></td>
<td class="nump">55,865<span></span>
</td>
<td class="nump">56,159<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_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Other intangible assets - accumulated amortization</a></td>
<td class="num">(38,552)<span></span>
</td>
<td class="num">(32,166)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Other intangible assets, net (note 2)</a></td>
<td class="nump">17,313<span></span>
</td>
<td class="nump">23,993<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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">115,636<span></span>
</td>
<td class="nump">111,745<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_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="ro">
<td class="pl custom" 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">761<span></span>
</td>
<td class="nump">788<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_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued expenses (note 2)</a></td>
<td class="nump">2,984<span></span>
</td>
<td class="nump">3,003<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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">3,745<span></span>
</td>
<td class="nump">3,791<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_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Long term lease liability</a></td>
<td class="nump">396<span></span>
</td>
<td class="nump">335<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_us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent', window );">Long term income tax payable (REPAT tax) (note 7)</a></td>
<td class="nump">1,675<span></span>
</td>
<td class="nump">1,995<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_us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets', window );">Deferred tax liability - intangible assets</a></td>
<td class="nump">2,105<span></span>
</td>
<td class="nump">2,151<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_us-gaap_DeferredIncomeTaxLiabilitiesNet', window );">Deferred income taxes (note 7)</a></td>
<td class="nump">577<span></span>
</td>
<td class="nump">651<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" 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">8,498<span></span>
</td>
<td class="nump">8,923<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_us-gaap_CommitmentsAndContingencies', window );">Commitments and contingencies (notes 6 and 12)</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_StockholdersEquityAbstract', window );"><strong>Stockholders' equity</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_CommonStockValue', window );">Common stock, $.01 par value; 50,000 shares authorized, 3,655 shares issued and outstanding in 2021 and 3,643 shares in 2020</a></td>
<td class="nump">37<span></span>
</td>
<td class="nump">36<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_us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1', window );">Accumulated other comprehensive loss</a></td>
<td class="num">(9,054)<span></span>
</td>
<td class="num">(8,281)<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_us-gaap_AdditionalPaidInCapitalCommonStock', window );">Additional paid-in capital</a></td>
<td class="nump">841<span></span>
</td>
<td class="nump">115<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_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">115,314<span></span>
</td>
<td class="nump">110,952<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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' equity</a></td>
<td class="nump">107,138<span></span>
</td>
<td class="nump">102,822<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" 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">$ 115,636<span></span>
</td>
<td class="nump">$ 111,745<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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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_AccountsReceivableNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<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_AccountsReceivableNetCurrent</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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_AccumulatedOtherComprehensiveIncomeLossBeforeTax1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 tax of increase (decrease) in accumulated equity from transactions and other events and circumstances from non-owner sources, including portion attributable to noncontrolling interest. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners (distributions to owners).</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_AccumulatedOtherComprehensiveIncomeLossBeforeTax1</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_AdditionalPaidInCapitalCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_AdditionalPaidInCapitalCommonStock</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://fasb.org/us-gaap/role/ref/legacyRef<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=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=120400017&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<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://fasb.org/us-gaap/role/ref/legacyRef<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=124098289&amp;loc=d3e6801-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 15: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://fasb.org/us-gaap/role/ref/legacyRef<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=124098289&amp;loc=d3e6676-107765<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<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_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_AssetsCurrentAbstract</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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120400017&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120398452&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=121557415&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_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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_DeferredIncomeTaxLiabilitiesNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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.</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/disclosureRef<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=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=123427490&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_DeferredIncomeTaxLiabilitiesNet</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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 tax liability attributable to taxable temporary differences from intangible assets other than goodwill.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-109319<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-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_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets</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_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/disclosureRef<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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6473545&amp;loc=d3e61844-108004<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_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/disclosureRef<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)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=99380562&amp;loc=d3e13770-109266<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_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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></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://fasb.org/us-gaap/role/ref/legacyRef<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=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120398452&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=120400017&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI http://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Present value of lessee's discounted obligation for lease payments from operating lease, 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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_OperatingLeaseLiabilityNoncurrent</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_OtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 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://fasb.org/us-gaap/role/ref/legacyRef<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.8)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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_OtherAssetsCurrent</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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=120400017&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=120397183&amp;loc=d3e187085-122770<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<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/2009/role/commonPracticeRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<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_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 tax liability from transition tax on accumulated earnings of controlled foreign corporation deemed repatriated pursuant to Tax Cuts and Jobs Act, 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/2009/role/commonPracticeRef<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_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386417923704">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS - Parenthetical - $ / shares<br> shares in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_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>
</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_us-gaap_CommonStockSharesAuthorized', window );">Common Stock, Shares Authorized</a></td>
<td class="nump">50,000<span></span>
</td>
<td class="nump">50,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_us-gaap_CommonStockSharesIssued', window );">Common Stock, Shares, Issued</a></td>
<td class="nump">3,655<span></span>
</td>
<td class="nump">3,643<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_us-gaap_CommonStockSharesOutstanding', window );">Common Stock, Shares, Outstanding</a></td>
<td class="nump">3,655<span></span>
</td>
<td class="nump">3,643<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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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>dtr-types: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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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://fasb.org/us-gaap/role/ref/legacyRef<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=123467817&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386417849048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</a></td>
<td class="nump">$ 49,054<span></span>
</td>
<td class="nump">$ 42,178<span></span>
</td>
<td class="nump">$ 46,904<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_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of goods sold</a></td>
<td class="nump">18,137<span></span>
</td>
<td class="nump">16,630<span></span>
</td>
<td class="nump">17,438<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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">30,917<span></span>
</td>
<td class="nump">25,548<span></span>
</td>
<td class="nump">29,466<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_us-gaap_SellingAndMarketingExpense', window );">Sales and marketing</a></td>
<td class="nump">1,414<span></span>
</td>
<td class="nump">1,554<span></span>
</td>
<td class="nump">1,738<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_us-gaap_ResearchAndDevelopmentExpense', window );">Research and development</a></td>
<td class="nump">526<span></span>
</td>
<td class="nump">486<span></span>
</td>
<td class="nump">483<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_us-gaap_GeneralAndAdministrativeExpense', window );">General and administrative</a></td>
<td class="nump">10,097<span></span>
</td>
<td class="nump">9,800<span></span>
</td>
<td class="nump">9,613<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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">18,880<span></span>
</td>
<td class="nump">13,708<span></span>
</td>
<td class="nump">17,632<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_us-gaap_OtherInterestAndDividendIncome', window );">Dividend and interest income</a></td>
<td class="nump">166<span></span>
</td>
<td class="nump">112<span></span>
</td>
<td class="nump">254<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_us-gaap_RoyaltyIncomeNonoperating', window );">Royalty income (note 12)</a></td>
<td class="nump">15<span></span>
</td>
<td class="nump">20<span></span>
</td>
<td class="nump">6<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_us-gaap_OtherNonoperatingIncomeExpense', window );">Other, net</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(8)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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 provision for income taxes</a></td>
<td class="nump">19,061<span></span>
</td>
<td class="nump">13,840<span></span>
</td>
<td class="nump">17,884<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_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes (note 7)</a></td>
<td class="nump">4,273<span></span>
</td>
<td class="nump">3,042<span></span>
</td>
<td class="nump">3,157<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 14,788<span></span>
</td>
<td class="nump">$ 10,798<span></span>
</td>
<td class="nump">$ 14,727<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_us-gaap_EarningsPerShareBasic', window );">Earnings per common share (basic) (note 1)</a></td>
<td class="nump">$ 4.05<span></span>
</td>
<td class="nump">$ 2.95<span></span>
</td>
<td class="nump">$ 3.96<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_us-gaap_EarningsPerShareDiluted', window );">Earnings per common share (diluted) (note 1)</a></td>
<td class="nump">$ 4.04<span></span>
</td>
<td class="nump">$ 2.94<span></span>
</td>
<td class="nump">$ 3.94<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_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract', window );"><strong>Other comprehensive income (loss)</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation net of taxes of $0 in all periods</a></td>
<td class="num">$ (773)<span></span>
</td>
<td class="nump">$ 1,502<span></span>
</td>
<td class="nump">$ 1,507<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ComprehensiveIncomeNetOfTax', window );">Total comprehensive income</a></td>
<td class="nump">$ 14,015<span></span>
</td>
<td class="nump">$ 12,300<span></span>
</td>
<td class="nump">$ 16,234<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_ComprehensiveIncomeNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(24))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=d3e557-108580<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(26))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<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_ComprehensiveIncomeNetOfTax</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_CostOfGoodsAndServicesSold">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.2(a),(d))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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_CostOfGoodsAndServicesSold</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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&amp;loc=d3e1448-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<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=125512782&amp;loc=d3e4984-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&amp;loc=d3e1252-109256<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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>dtr-types: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/exampleRef<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=125512782&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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>dtr-types: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_GeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=123367319&amp;loc=SL114868664-224227<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_GeneralAndAdministrativeExpense</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_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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=123367319&amp;loc=SL114868664-224227<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=123384075&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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/disclosureRef<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=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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_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>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<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_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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669646-108580<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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</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_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract</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_OtherInterestAndDividendIncome">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 discount, accretion and premium amortization, of interest income and dividend income 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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_OtherInterestAndDividendIncome</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_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 (expense) related to nonoperating activities, 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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_OtherNonoperatingIncomeExpense</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_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the 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/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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_ProfitLoss</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_ResearchAndDevelopmentExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 730<br> -Section 25<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6472174&amp;loc=d3e58812-109433<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 985<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6501960&amp;loc=d3e128462-111756<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 730<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6420194&amp;loc=d3e21568-108373<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_ResearchAndDevelopmentExpense</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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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_RevenueFromContractWithCustomerExcludingAssessedTax</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_RoyaltyIncomeNonoperating">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Ancillary revenue earned during the period from the consideration paid to the entity for the use of its rights and property by another party. Examples include licensing the use of copyrighted materials and leasing the extraction of natural resources.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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_RoyaltyIncomeNonoperating</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_SellingAndMarketingExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 amount of expenses directly related to the marketing or selling of products or services.</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_SellingAndMarketingExpense</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>19
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418580024">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME - Parenthetical - USD ($)<br></strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax', window );">Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Tax</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<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_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 tax expense (benefit), after reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32262-110900<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=d3e640-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=125521441&amp;loc=d3e30755-110894<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669646-108580<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_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416601624">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY - USD ($)<br> shares in Thousands, $ in Thousands</strong></div></th>
<th class="th"><div>Common Stock</div></th>
<th class="th"><div>Additional Paid-In Capitol</div></th>
<th class="th"><div>Comprehensive Income</div></th>
<th class="th"><div>Retained Earnings</div></th>
<th class="th"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Equity Balance, value at Dec. 31, 2018</a></td>
<td class="nump">$ 37<span></span>
</td>
<td class="nump">$ 122<span></span>
</td>
<td class="num">$ (11,290)<span></span>
</td>
<td class="nump">$ 100,123<span></span>
</td>
<td class="nump">$ 88,992<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Equity Balance, shares at Dec. 31, 2018</a></td>
<td class="nump">3,720<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Common stock issued upon exercise of employee stock options</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">290<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">290<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_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Common stock issued upon exercise of employee stock options, shares</a></td>
<td class="nump">7<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions', window );">Common stock received and retired upon exercise of stock options</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(7)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(7)<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_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares', window );">Common stock received and retired upon exercise of stock options, shares</a></td>
<td class="nump">0<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock option compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">113<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">113<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_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue', window );">Common stock purchased and retired</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(499)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">101<span></span>
</td>
<td class="num">(398)<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_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock purchased and retired, shares</a></td>
<td class="num">(5)<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,507<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,507<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_us-gaap_DividendsCommonStockCash', window );">Common stock dividends</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(4,132)<span></span>
</td>
<td class="num">(4,132)<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_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">14,727<span></span>
</td>
<td class="nump">14,727<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Equity Balance, value at Dec. 31, 2019</a></td>
<td class="nump">$ 37<span></span>
</td>
<td class="nump">18<span></span>
</td>
<td class="num">(9,782)<span></span>
</td>
<td class="nump">110,820<span></span>
</td>
<td class="nump">101,093<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Equity Balance, shares at Dec. 31, 2019</a></td>
<td class="nump">3,722<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Common stock issued upon exercise of employee stock options</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">358<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">358<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_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Common stock issued upon exercise of employee stock options, shares</a></td>
<td class="nump">8<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock option compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">160<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">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_us-gaap_StockRepurchasedAndRetiredDuringPeriodValue', window );">Common stock purchased and retired</a></td>
<td class="num">$ (1)<span></span>
</td>
<td class="num">(421)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(6,555)<span></span>
</td>
<td class="num">(6,976)<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_us-gaap_StockRepurchasedAndRetiredDuringPeriodShares', window );">Common stock purchased and retired, shares</a></td>
<td class="num">(87)<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,502<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">1,502<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_us-gaap_DividendsCommonStockCash', window );">Common stock dividends</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(4,112)<span></span>
</td>
<td class="num">(4,112)<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_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">10,798<span></span>
</td>
<td class="nump">10,798<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Equity Balance, value at Dec. 31, 2020</a></td>
<td class="nump">$ 36<span></span>
</td>
<td class="nump">115<span></span>
</td>
<td class="num">(8,280)<span></span>
</td>
<td class="nump">110,951<span></span>
</td>
<td class="nump">102,822<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Equity Balance, shares at Dec. 31, 2020</a></td>
<td class="nump">3,643<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised', window );">Common stock issued upon exercise of employee stock options</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">787<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">787<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_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Common stock issued upon exercise of employee stock options, shares</a></td>
<td class="nump">14<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions', window );">Common stock received and retired upon exercise of stock options</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(227)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(227)<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_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares', window );">Common stock received and retired upon exercise of stock options, shares</a></td>
<td class="num">(2)<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockOptionPlanExpense', window );">Stock option compensation expense</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">166<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">166<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_us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax', window );">Foreign currency translation adjustment</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(773)<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(773)<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_us-gaap_DividendsCommonStockCash', window );">Common stock dividends</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(10,425)<span></span>
</td>
<td class="num">(10,425)<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_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">14,788<span></span>
</td>
<td class="nump">14,788<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Equity Balance, value at Dec. 31, 2021</a></td>
<td class="nump">$ 36<span></span>
</td>
<td class="nump">$ 842<span></span>
</td>
<td class="num">$ (9,053)<span></span>
</td>
<td class="nump">$ 115,314<span></span>
</td>
<td class="nump">$ 107,138<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Equity Balance, shares at Dec. 31, 2021</a></td>
<td class="nump">3,655<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_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Common stock received and retired upon exercise of stock options, during the indicated time 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;">fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 Common stock received and retired upon exercise of stock options, shares (number of shares), during the indicated time 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;">fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_DividendsCommonStockCash">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 paid and unpaid common stock dividends declared with the form of settlement in cash.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120397183&amp;loc=d3e187085-122770<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_DividendsCommonStockCash</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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 10A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669646-108580<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_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax</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_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the 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/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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_ProfitLoss</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_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 issued which are neither cancelled nor held in the treasury.</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_SharesOutstanding</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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=123467817&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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 issued as a result of the exercise of stock options.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123467817&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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-31)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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_StockIssuedDuringPeriodValueStockOptionsExercised</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_StockOptionPlanExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 noncash expense for option under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_StockOptionPlanExpense</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_StockRepurchasedAndRetiredDuringPeriodShares">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 that have been repurchased and retired 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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=123467817&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_StockRepurchasedAndRetiredDuringPeriodShares</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_StockRepurchasedAndRetiredDuringPeriodValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=123467817&amp;loc=d3e21463-112644<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=120397183&amp;loc=d3e187085-122770<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_StockRepurchasedAndRetiredDuringPeriodValue</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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21930-107793<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21914-107793<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 16<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568740-111683<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 11: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21711-107793<br><br>Reference 13: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (d)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4590271-111686<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 24: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4568447-111683<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Publisher FASB<br> -Subparagraph (a)(3)(iii)(03)<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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386417763912">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED CONDENSED STATEMENTS OF CASH FLOW - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 14,788<span></span>
</td>
<td class="nump">$ 10,798<span></span>
</td>
<td class="nump">$ 14,727<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_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>
<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_us-gaap_Depreciation', window );">Depreciation</a></td>
<td class="nump">636<span></span>
</td>
<td class="nump">655<span></span>
</td>
<td class="nump">700<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_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization</a></td>
<td class="nump">6,645<span></span>
</td>
<td class="nump">6,515<span></span>
</td>
<td class="nump">6,144<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_us-gaap_ProvisionForDoubtfulAccounts', window );">Provision for losses on accounts receivable</a></td>
<td class="nump">24<span></span>
</td>
<td class="num">(5)<span></span>
</td>
<td class="nump">14<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_us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense', window );">Amortization of operating lease assets</a></td>
<td class="nump">3<span></span>
</td>
<td class="nump">39<span></span>
</td>
<td class="nump">38<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_us-gaap_GainLossOnDispositionOfAssets', window );">Loss/(Gain) on disposal of assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="nump">16<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_us-gaap_DeferredIncomeTaxExpenseBenefit', window );">Deferred income taxes</a></td>
<td class="num">(92)<span></span>
</td>
<td class="num">(26)<span></span>
</td>
<td class="num">(396)<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_us-gaap_ShareBasedCompensation', window );">Stock-based compensation expense</a></td>
<td class="nump">166<span></span>
</td>
<td class="nump">160<span></span>
</td>
<td class="nump">113<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_us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities', window );">Tax benefit attributable to exercise of stock options</a></td>
<td class="nump">39<span></span>
</td>
<td class="nump">7<span></span>
</td>
<td class="nump">23<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_us-gaap_IncreaseDecreaseInAccountsReceivable', window );">Accounts receivable</a></td>
<td class="num">(1,088)<span></span>
</td>
<td class="nump">617<span></span>
</td>
<td class="num">(738)<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_us-gaap_IncreaseDecreaseInOtherReceivables', window );">Other receivables</a></td>
<td class="num">(42)<span></span>
</td>
<td class="nump">45<span></span>
</td>
<td class="num">(16)<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_us-gaap_IncreaseDecreaseInInventories', window );">Inventories</a></td>
<td class="num">(485)<span></span>
</td>
<td class="nump">924<span></span>
</td>
<td class="num">(1,686)<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_us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets', window );">Prepaid expenses and other current assets</a></td>
<td class="num">(81)<span></span>
</td>
<td class="nump">108<span></span>
</td>
<td class="num">(16)<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_us-gaap_IncreaseDecreaseInAccountsPayable', window );">Accounts payable</a></td>
<td class="num">(23)<span></span>
</td>
<td class="num">(308)<span></span>
</td>
<td class="nump">114<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_us-gaap_IncreaseDecreaseInAccruedLiabilities', window );">Accrued expenses</a></td>
<td class="nump">713<span></span>
</td>
<td class="nump">607<span></span>
</td>
<td class="num">(1,651)<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_us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense', window );">Long-term repatriation tax payable</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(330)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" 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">21,203<span></span>
</td>
<td class="nump">20,137<span></span>
</td>
<td class="nump">17,056<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>
<td class="text">&#160;<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_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Property and equipment</a></td>
<td class="num">(552)<span></span>
</td>
<td class="num">(860)<span></span>
</td>
<td class="num">(540)<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_us-gaap_PaymentsToAcquireIntangibleAssets', window );">Intangible assets</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="num">(21,000)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" 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">(552)<span></span>
</td>
<td class="num">(860)<span></span>
</td>
<td class="num">(21,540)<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>
<td class="text">&#160;<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_us-gaap_ProceedsFromIssuanceOfCommonStock', window );">Proceeds from issuance of common stock - options</a></td>
<td class="nump">560<span></span>
</td>
<td class="nump">358<span></span>
</td>
<td class="nump">283<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_us-gaap_PaymentsForRepurchaseOfCommonStock', window );">Common stock purchased and retired</a></td>
<td class="nump">0<span></span>
</td>
<td class="num">(6,976)<span></span>
</td>
<td class="num">(398)<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_us-gaap_PaymentsOfDividends', window );">Dividends paid</a></td>
<td class="num">(11,465)<span></span>
</td>
<td class="num">(4,116)<span></span>
</td>
<td class="num">(4,112)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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">(10,905)<span></span>
</td>
<td class="num">(10,734)<span></span>
</td>
<td class="num">(4,227)<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_us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents', window );">Effect of exchange rate changes on cash</a></td>
<td class="num">(362)<span></span>
</td>
<td class="nump">260<span></span>
</td>
<td class="nump">386<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase (decrease) in cash and cash equivalents</a></td>
<td class="nump">9,384<span></span>
</td>
<td class="nump">8,803<span></span>
</td>
<td class="num">(8,325)<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_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash at beginning of year</a></td>
<td class="nump">51,590<span></span>
</td>
<td class="nump">42,787<span></span>
</td>
<td class="nump">51,112<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_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash at end of year</a></td>
<td class="nump">60,974<span></span>
</td>
<td class="nump">51,590<span></span>
</td>
<td class="nump">42,787<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_us-gaap_IncomeTaxesPaid', window );">Cash paid during the period for income taxes</a></td>
<td class="nump">4,617<span></span>
</td>
<td class="nump">3,186<span></span>
</td>
<td class="nump">5,304<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_us-gaap_InterestPaid', window );">Cash paid during the period for interest</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<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_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_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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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></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_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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&amp;loc=d3e3044-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123444420&amp;loc=d3e33268-110906<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&amp;loc=d3e3521-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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</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://fasb.org/us-gaap/role/ref/legacyRef<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=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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.Fact.1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<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)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&amp;loc=d3e3602-108585<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<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=121826272&amp;loc=d3e32639-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_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_Depreciation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_Depreciation</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_EffectOfExchangeRateOnCashAndCashEquivalents">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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) from the effect of exchange rate changes on cash and cash equivalent balances held in foreign currencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123444420&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_EffectOfExchangeRateOnCashAndCashEquivalents</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://fasb.org/us-gaap/role/ref/otherTransitionRef<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=122142933&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/2009/role/commonPracticeRef<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=123570139&amp;loc=d3e3602-108585<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351718&amp;loc=d3e2443-110228<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=109226691&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_IncomeTaxesPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123431023&amp;loc=d3e4297-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&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_IncomeTaxesPaid</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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 amount due within one year (or one business cycle) from customers for the credit sale of 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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_IncreaseDecreaseInAccountsReceivable</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_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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_IncreaseDecreaseInOtherReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 receivables 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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_IncreaseDecreaseInOtherReceivables</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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 prepaid expenses, and 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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</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_InterestPaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to 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; classified as operating and investing 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/2009/role/commonPracticeRef<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=123431023&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_InterestPaid</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/disclosureRef<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=123570139&amp;loc=d3e3521-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/disclosureRef<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=123570139&amp;loc=d3e3521-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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&amp;loc=d3e3536-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&amp;loc=d3e3521-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_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_NetCashProvidedByUsedInOperatingActivitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_NetCashProvidedByUsedInOperatingActivitiesAbstract</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_OperatingLeaseRightOfUseAssetAmortizationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 right-of-use asset from operating lease.</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/2009/role/commonPracticeRef<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=123570139&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_OperatingLeaseRightOfUseAssetAmortizationExpense</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_PaymentsForRepurchaseOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 to reacquire common stock 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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_PaymentsForRepurchaseOfCommonStock</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_PaymentsOfDividends">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_PaymentsOfDividends</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_PaymentsToAcquireIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_PaymentsToAcquireIntangibleAssets</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://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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_ProceedsFromIssuanceOfCommonStock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 additional capital contribution to the entity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&amp;loc=d3e3255-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_ProceedsFromIssuanceOfCommonStock</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_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the 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/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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_ProfitLoss</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_ProvisionForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 expense (reversal of expense) for expected credit loss on accounts receivable.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 50<br> -Paragraph 13<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124255953&amp;loc=SL82919249-210447<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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_ProvisionForDoubtfulAccounts</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_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>Amount of noncash expense for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 tax expense from transition tax on accumulated earnings of controlled foreign corporation deemed repatriated pursuant to Tax Cuts and Jobs Act.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-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_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense</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>22
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422551368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_SignificantAccountingPoliciesTextBlock', window );">Note 1 - Summary of Significant Accounting Policies</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 1 &#8211;&#160;Summary of Significant Accounting Policies</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Organization</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Utah Medical Products, Inc. with headquarters in Midvale, Utah and its wholly-owned operating subsidiaries, Femcare Limited located in Romsey, Hampshire, England, Femcare Australia Pty Ltd located in Castle Hill, NSW, Australia, Utah Medical Products Canada, Inc. (dba Femcare Canada) located in Mississauga, Ontario, Canada and Utah Medical Products Ltd., which operates a manufacturing facility in Athlone, Ireland, (in the aggregate, the Company) are in the primary business of developing, manufacturing and globally distributing specialized medical devices for the healthcare industry. &#160;The Company&#8217;s broad range of products includes those used in critical care areas and the labor and delivery departments of hospitals, as well as outpatient clinics and physicians&#8217; offices. &#160;Products are sold directly to end-user facilities in the U.S., Ireland, UK, Canada, France and Australia, and through third party distributors in other outside the U.S. (OUS) markets. &#160;Domestically, until February 1, 2019, Femcare had an exclusive U.S. distribution relationship with CooperSurgical, Inc. (CSI) for the Filshie Clip System. &#160;UTMD also sells subcontract manufactured components and finished products to over 150 companies in the U.S. for their medical and non-medical products.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Use of Estimates in the Preparation of Financial Statements</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">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. &#160;Although actual results could differ from those estimates, management believes it has considered and disclosed all relevant information in making its estimates that materially affect reported performance and current values.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Principles of Consolidation</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The consolidated financial statements include those of the Company and its subsidiaries. &#160;All intercompany accounts and transactions have been eliminated in consolidation. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Cash and Cash Equivalents</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">For purposes of the consolidated statement of cash flows, the Company considers cash on deposit and short-term investments with original maturities of three months or less to be cash and cash equivalents.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Concentration of Credit Risk</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The primary concentration of credit risk consists of trade receivables. &#160;In the normal course of business, the Company provides credit terms to its customers. &#160;Accordingly, the Company performs ongoing credit evaluations of its customers and maintains allowances for possible losses which, when realized, have been within the range of management's expectations as reflected by its reserves. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company's customer base consists of hospitals, medical device distributors, physician practices and others directly related to healthcare providers, as well as other manufacturing companies. Although the Company is affected by the well-being of the global healthcare industry, management does not believe significant trade receivable credit risk exists at December&#160;31, 2021 except under an extreme global financial crisis.</p>
<p style="font:10pt Times New Roman;margin:0">The Company maintains its cash in bank deposit accounts in addition to Fidelity Investment money market accounts. &#160;The Company has not experienced any losses in such accounts and believes it is not exposed to a significant credit risk on cash and cash equivalent balances. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Accounts Receivable</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Accounts receivable are amounts due on product sales and are unsecured. &#160;Accounts receivable are carried at their estimated collectible amounts. &#160;Credit is generally extended on a short-term basis; thus, accounts receivable do not bear interest although a late charge may be applied to such receivables that are past the due date. &#160;Accounts receivable are periodically evaluated for collectability based on past credit history of customers and current market conditions. &#160;Provisions for losses on accounts receivable are determined on the basis of loss experience, known and inherent risk in the account balance and current economic conditions (see note 2).</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Inventories</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Finished products, work-in-process, raw materials and supplies inventories are stated at the lower of cost and net realizable value (NRV) computed on a first-in, first-out method. &#160;Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable costs of completion, disposal, and transportation (see note 2). </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Property and Equipment</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Property and equipment are stated at cost. &#160;Depreciation and amortization are computed using the straight-line method over estimated useful lives as follows:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td colspan="2" style="width:391.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td></tr>
<tr><td style="width:298.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Building and improvements</p>
</td><td style="width:92.7pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">15 - 40 years</p>
</td></tr>
<tr><td style="width:298.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Furniture, equipment and tooling</p>
</td><td style="width:92.7pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">3 - 10 years</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Long-Lived Assets</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company evaluates its long-lived assets in accordance with Accounting Standards Codification (ASC) 360, &#8220;Accounting for the Impairment of Long-Lived Assets.&#8221; &#160;Long-lived assets held and used by the Company are reviewed for impairment whenever events or changes in circumstances indicate that their net book value may not be recoverable. &#160;When such factors and circumstances exist, the Company compares the projected undiscounted future cash flows associated with the related asset or group of assets over their estimated useful lives against their respective carrying amounts. &#160;Impairment, if any, is based on the excess of the carrying amount over the fair value of those assets and is recorded in the period in which the determination was made. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Intangible Assets</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Costs associated with the acquisition of patents, trademarks, trade names, customer relationships, regulatory approvals &amp; product certifications, license rights and non-compete agreements are capitalized, and are being amortized using the straight-line method over periods ranging from 5 to 20 years. UTMD&#8217;s goodwill is tested for impairment annually, in the fourth quarter of each year, in accordance with ASC 350. UTMD also performs impairment tests contemporaneously, if circumstances change that would more than likely reduce the fair value of goodwill below its net book value. &#160;If UTMD determines that its goodwill is impaired, a second step is completed to measure the amount of the impairment loss. UTMD does not expect its goodwill to become impaired in the foreseeable future. &#160;Estimated future amortization expenses on intangible assets held as of December 31, 2021, using the 2021 year-end 1.3536 USD/GBP and0.7268 USD/AUD currency exchange rates, is about $6,542 in 2022, $5,805 in 2023, $2,121 in 2024, $2,121 in 2025, and $463 in 2026 (see note 2).</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">In 2019, $21,000 in intangible assets were acquired from CSI. &#160;The future amortization expenses on those assets are estimated to be $4,421 per year in 2022, and $3,684 in 2023 (see note 15).</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
 <p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Stock-Based Compensation </span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">At December 31, 2021, the Company has stock-based employee compensation plans, which are described more fully in note 8. &#160;The Company accounts for stock compensation under ASC 718, <i>Share-Based Payment</i>. &#160;This statement requires the Company to recognize compensation cost based on the grant date fair value of options granted to employees and directors. In 2021, the Company recognized $166 in stock-based compensation cost compared to $160 in 2020 and $113 in 2019.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Revenue Recognition</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company recognizes revenue at the time of product shipment as UTMD meets its contractual performance obligations to the customer at the time of shipment. Revenue recognized by UTMD is based upon the consideration to which UTMD is entitled from its customers as a result of shipping a physical product, in accordance with the documented arrangements and fixed contracts in which the selling price was fixed prior to the Company&#8217;s acceptance of an order. Revenue from service sales, which are immaterial to UTMD, is generally recognized when the service is completed and invoiced. As demonstrated by decades of experience in successful and consistent collections, there is very minor and insignificant uncertainty regarding the collectability of invoiced amounts reasonably within the terms of the Company&#8217;s contracts. There are circumstances under which insignificant revenue may be recognized when product is not shipped, which meet the criteria of ASC 606: the Company provides engineering services, for example, design and production of manufacturing tooling that may be used in subsequent UTMD manufacturing of custom components for other companies. &#160;This revenue is recognized when UTMD&#8217;s performance obligations have been completed according to a fixed contractual agreement. &#160;UTMD includes handling fees charged to customers in revenues. </p>
<p style="font:10pt Times New Roman;margin:0"> &#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Income Taxes</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company accounts for income taxes under ASC 740, &#8220;Accounting for Income Taxes,&#8221; whereby deferred taxes are computed under the asset and liability method. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company accounts for deferred taxes under ASC 740, &#8220;Accounting for Income Taxes,&#8221; which requires that all deferred income taxes are classified as noncurrent in a classified statement of financial position.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The TCJA contains a deemed repatriation transition tax (REPAT tax) on accumulated earnings and profits of the Company&#8217;s non-U.S. subsidiaries that have not been subject to U.S. tax. &#160;The Company has elected to pay its net REPAT tax over eight years. &#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company or one of its subsidiaries files income tax returns in the U.S. federal jurisdiction, in Utah, in the United Kingdom, in Australia, in Ireland and in Canada. &#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company recognizes interest accrued related to unrecognized tax benefits in interest expense and any related penalties in income taxes. The Company did not recognize any tax-related interest expense or have any tax penalties in 2019 or 2021. &#160;In 2020 the Company paid tax penalties of $4. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Legal Costs</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company has been involved in lawsuits which are an expected consequence of its operations and in the ordinary course of business. &#160;The Company maintains a reserve for legal costs which are probable and estimated based on previous experience and known risk. &#160;The reserve for legal costs at December 31, 2021 and 2020 was  $96 and $113, respectively (see note 2).</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Earnings per Share</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The computation of basic earnings per common share is based on the weighted average number of shares outstanding during each year. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The computation of earnings per common share assuming dilution is based on the weighted average number of shares outstanding during the year plus the weighted average common stock equivalents which would arise from the exercise of stock options outstanding using the treasury stock method and the average market price per share during the year.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt">The shares (in thousands) used in the computation of the Company&#8217;s basic and diluted earnings per share are reconciled as follows:</p>
<p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:960.75pt" valign="top"/><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:960.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> Weighted average number of shares outstanding &#8211;&#160;basic</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,647</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,658</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,721</p>
</td></tr>
<tr><td style="width:960.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> Dilutive effect of stock options</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">18</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:960.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> Weighted average number of shares outstanding, assuming dilution</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,660</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,672</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,739</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Presentation of Sales and Similar Taxes</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Sales tax on revenue-producing transactions is recorded as a liability when the sale occurs. &#160;UTMD is not required to withhold sales tax on OUS sales, and at least 90% of domestic 2021 sales were to customers who are tax exempt or who are in jurisdictions where UTMD is not required to withhold sales tax.</p>
<p style="font:10pt Times New Roman;margin:0"> &#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Translation of Foreign Currencies</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Assets and liabilities of the Company&#8217;s foreign subsidiaries are translated into U.S. dollars at the applicable exchange rates at year-end. &#160;Net gains or losses resulting from the translation of the Company&#8217;s assets and liabilities are reflected as a separate component of stockholders&#8217; equity. &#160;A negative translation impact on stockholders&#8217; equity reflects a current relative U.S. Dollar value higher than at the point in time that assets were actually acquired in a foreign currency. &#160;A positive translation impact would result from a U.S. dollar weaker in value than at the point in time foreign assets were acquired. &#160;Year-end translation gains or losses of non-functional currency bank account balances, e.g. EUR and AUD balances held by the UK subsidiary, are recognized as non-operating income or expense, as applicable.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Income and expense items are translated at the weighted average rate of exchange (based on when transactions actually occurred) during the year. </p>
<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_SignificantAccountingPoliciesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 significant accounting policies of the reporting entity.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18726-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -URI http://asc.fasb.org/topic&amp;trid=2122369<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_SignificantAccountingPoliciesTextBlock</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>dtr-types: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>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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418126584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_SupplementalBalanceSheetDisclosuresTextBlock', window );">Note 2 - Detail of Certain Balance Sheet Accounts</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 2 &#8211;&#160;Detail of Certain Balance Sheet Accounts</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="4" style="width:343.95pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">December 31,</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"/><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.15pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accounts and other receivables:</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Accounts receivable&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,287</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,224</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Accrued interest and other&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">39</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Less allowance for doubtful accounts&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(156)</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(134)</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total accounts and other receivables&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,170</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,104</p>
</td></tr>
</table>
 <p style="font:11pt Times New Roman;margin:0"/>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Inventories:</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">.</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Finished products&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,468</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,363</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Work-in-process&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,398</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,375</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Raw materials&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,730</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,484</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total inventories&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,596</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,222</p>
</td></tr>
</table>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Goodwill:</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Balance as of January 1</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,164</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13,961</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Effect of foreign exchange&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(66)</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">203</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Subtractions as a result of impairment&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total Goodwill as of December 31&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,098</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,164</p>
</td></tr>
</table>
<p style="font:11pt Times New Roman;margin:0"/>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Other identifiable intangible assets:</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"/><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"/></tr>
<tr><td style="background-color:#CCEEFF;width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Patents&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,212</p>
</td><td style="background-color:#CCEEFF;width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,201</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Non-compete agreements&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">135</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">137</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Trademarks &amp; trade names&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,930</p>
</td><td style="background-color:#CCEEFF;width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,021</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Customer relationships&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,678</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,769</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/> Distribution agreements&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">21,000</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">21,000</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Regulatory approvals &amp; product certifications&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,910</p>
</td><td style="background-color:#CCEEFF;width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13,031</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total Other Identifiable Intangible Assets&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">55,865</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">56,159</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Accumulated amortization&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(38,552)</p>
</td><td style="background-color:#CCEEFF;width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(32,166)</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/> Other Identifiable Intangible Assets, Net&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">17,313</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">23,993</p>
</td></tr>
</table>
 <p style="font:11pt Times New Roman;margin:0"/>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accrued expenses:</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Income taxes payable&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">36</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Payroll and payroll taxes&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,225</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">946</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Reserve for litigation costs&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">96</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">113</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Other&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,627</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,941</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total accrued expenses&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,984</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,003</p>
</td></tr>
</table>
<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_SupplementalBalanceSheetDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -URI http://asc.fasb.org/topic&amp;trid=2122208<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_SupplementalBalanceSheetDisclosuresTextBlock</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>dtr-types: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>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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422778584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Quarterly Results of Operations (Unaudited)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_QuarterlyFinancialInformationTextBlock', window );">Note 3 - Quarterly Results of Operations (Unaudited)</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 3 &#8211;&#160;Quarterly Results of Operations (Unaudited)</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Unaudited Quarterly Data for 2021</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">First Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Second Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Third Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Fourth Quarter</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Sales</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,964</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,604</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,572</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,914</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gross Profit</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,947</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,785</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">8,073</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">8,112</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Income</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,024</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,426</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,206</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,131</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings Per Common Share (Diluted)</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.83</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.94</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1.15</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1.13</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Unaudited Quarterly Data for 2020</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">First Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Second Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Third Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Fourth Quarter</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Sales</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,902</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">8,787</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,479</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,010</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gross Profit</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,836</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,950</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,497</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,265</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Income</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,140</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,313</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,933</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,412</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings Per Common Share (Diluted)</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.84</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.36</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.80</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.94</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Unaudited Quarterly Data for 2019</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">First Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Second Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Third Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Fourth Quarter</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Sales</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,732</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,846</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,494</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,831</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gross Profit</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,773</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,500</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,379</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,814</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Income</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,139</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,525</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,705</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,359</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings Per Common Share (Diluted)</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.84</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.94</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.99</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1.17</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0;color:#000000">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"/>
<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_QuarterlyFinancialInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 quarterly financial data. Includes, but is not limited to, tabular presentation of financial information for fiscal quarters, effect of year-end adjustments, and an explanation of matters or transactions that affect comparability of the information.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -URI http://asc.fasb.org/topic&amp;trid=2126967<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1B<br> -URI http://asc.fasb.org/extlink&amp;oid=124502072&amp;loc=SL124452896-108306<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_QuarterlyFinancialInformationTextBlock</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>dtr-types: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>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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422766552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Property and Equipment<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock', window );">Note 4 - Property and Equipment</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 4 &#8211;&#160;Property and Equipment</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Property and equipment consists of the following:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="4" style="width:241.05pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">December 31,</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"/><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:97.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:1.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:99.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Land</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,690</p>
</td><td style="background-color:#CCEEFF;width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,725</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Buildings and improvements</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,172</p>
</td><td style="width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,531</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Furniture, equipment and tooling</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,660</p>
</td><td style="background-color:#CCEEFF;width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,750</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> <span style="-sec-ix-hidden:fact5"><span style="-sec-ix-hidden:fact6">Right-of-Use</span></span> Asset</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">449</p>
</td><td style="width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">377</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Construction-in-progress</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">898</p>
</td><td style="background-color:#CCEEFF;width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">527</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Total&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:97.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33,869</p>
</td><td style="width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:99.05pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33,910</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accumulated depreciation</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:97.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(22,802)</p>
</td><td style="background-color:#CCEEFF;width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:99.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(22,584)</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Property and equipment, net</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:97.3pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,067</p>
</td><td style="width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:99.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,326</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Included in the Company&#8217;s consolidated balance sheet are the assets of its manufacturing and administrative facilities in Utah, Canada, England, Australia and Ireland. &#160;Property and equipment, by geographic area, are as follows:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Dutch801SWC;margin:0;text-align:center"><span style="font-family:Times New Roman">December 31, 2021</span></p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">U.S. &amp; Canada</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">England &amp; Australia </p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Ireland</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Total</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Land</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">621</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">678</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">391</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,690</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Buildings and improvements</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,541</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,384</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,247</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,172</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Furniture, equipment and tooling</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,608</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">752</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,300</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,660</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Right-of-Use Asset</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">411</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">38</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">449</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Construction-in-progress</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">412</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">484</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">898</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Total&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">22,593</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,816</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,460</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33,869</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accumulated depreciation</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(18,168)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(1,164)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(3,470)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(22,802)</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Property and equipment, net</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,425</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,652</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,990</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,067</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.3pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Dutch801SWC;margin:0;text-align:center"><span style="font-family:Times New Roman">December 31, 2020</span></p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">U.S. &amp; Canada</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">England &amp; Australia </p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Ireland</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Total</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Land</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">621</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">684</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">420</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,725</p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Buildings and improvements</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,523</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,443</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,565</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,531</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Furniture, equipment and tooling</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,632</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">761</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,357</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,750</p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Right-of-Use Asset</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">361</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">377</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Construction-in-progress</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">36</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">491</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">527</p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Total&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">22,173</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,888</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,849</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33,910</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accumulated depreciation</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(17,934)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(974)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(3,676)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(22,584)</p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Property and equipment, net</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,239</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,914</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,173</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,326</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<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_PropertyPlantAndEquipmentDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -URI http://asc.fasb.org/topic&amp;trid=2155823<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=SL120174063-112916<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<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_PropertyPlantAndEquipmentDisclosureTextBlock</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>dtr-types: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>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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422551368">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Long-term Debt<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_LongTermDebtTextBlock', window );">Note 5 - Long-term Debt</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 5 &#8211;&#160;Long-term Debt</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">None in 2020 and 2021.</p>
<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_LongTermDebtTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 long-term debt.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI http://asc.fasb.org/topic&amp;trid=2208564<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_LongTermDebtTextBlock</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>dtr-types: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>27
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422711672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Commitments and Contingencies<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Note 6 - Commitments and Contingencies</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt"><span style="border-bottom:1px solid #000000">Note 6 &#8211;&#160;Commitments and Contingencies</span></p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Purchase Obligations</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company has obligations to purchase raw materials for use in its manufacturing operations. &#160;The Company has the right to make changes in, among other things, purchase quantities, delivery schedules and order acceptance.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Product Liability</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company is self-insured for product liability risk. &#8220;Product liability&#8221; is an insurance industry term for the cost of legal defense and possible damages awarded as a result of use of a company&#8217;s product during a procedure which results in an injury of a patient. &#160;The Company maintains a reserve for product liability litigation and damages consistent with its previous long-term experience. &#160;Actual product liability litigation costs and damages during the last three reporting years have been immaterial, which is consistent with the Company&#8217;s overall history. &#160;&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company absorbs the costs of clinical training and trouble-shooting in its on-going operating expenses.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Warranty Reserve</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company&#8217;s published warranty is: &#8220;UTMD warrants its products to conform in all material respects to all published product specifications in effect on the date of shipment, and to be free from defects in material and workmanship for a period of thirty (30) days for supplies, or twenty-four (24) months for equipment, from date of shipment. &#160;During the warranty period UTMD shall, at its option, replace any products shown to UTMD's reasonable satisfaction to be defective at no expense to the Purchaser or refund the purchase price.&#8221; </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">UTMD maintains a warranty reserve to provide for estimated costs which are likely to occur. The amount of this reserve is adjusted, as required, to reflect its actual experience. Based on its analysis of historical warranty claims and its estimate that existing warranty obligations are immaterial, no warranty reserve was made at December 31, 2021 or December 31, 2020. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Litigation</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company has been involved in lawsuits which are an expected consequence of its operations and in the ordinary course of business. &#160;Presently, there is no litigation or threatened litigation for which the Company believes the outcome may be material to its financial results. &#160;The Company applies its accounting policy to accrue legal costs that can be reasonably estimated. </p>
<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_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI http://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI http://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 440<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6491277&amp;loc=d3e6429-115629<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<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_CommitmentsAndContingenciesDisclosureTextBlock</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>dtr-types: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>28
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422728408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Taxes<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_IncomeTaxDisclosureTextBlock', window );">Note 7 - Income Taxes</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 7 &#8211;&#160;Income Taxes &#160;</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Deferred tax assets (liabilities) consist of the following temporary differences:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:99.98%"><tr><td style="width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="7" style="width:588.95pt;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">December 31,</p>
</td></tr>
<tr><td style="width:795.65pt" valign="top"/><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:113.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Inventory write-downs and differences due to UNICAP</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">88</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">86</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">84</p>
</td></tr>
<tr><td style="width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Allowance for doubtful accounts</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">31</p>
</td><td style="width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">32</p>
</td><td style="width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accrued liabilities and reserves</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">58</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">68</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">55</p>
</td></tr>
<tr><td style="width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Depreciation and amortization</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,925)</p>
</td><td style="width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(3,034)</p>
</td><td style="width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,933)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Deferred income taxes, net</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,748)</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,848)</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,761)</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The components of income tax expense are as follows:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Years ended December 31,</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"/><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Current</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,983</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,253</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,467</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Deferred</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">290</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(211)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(310)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,273</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,042</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,157</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Income tax expense differed from amounts computed by applying the statutory federal rate to pretax income as follows:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Years ended December 31,</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"/><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Federal income tax expense at the statutory rate</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,520</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,915</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,512</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">State income taxes</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">448</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">369</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(124)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Foreign income taxes (blended rate)</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,010</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">550</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">985</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">ETI, manufacturing deduction and tax credits</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(6)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(7)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(9)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Deemed repatriation transition tax </p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#FF0000;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">263</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(266)</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">US Taxes on foreign income</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(99)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(35)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">59</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Change in Rate</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">391</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Other</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(13)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,273</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,042</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,157</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The domestic and foreign components of income before income tax expense were as follows: &#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Years ended December 31,</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"/><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Domestic</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,004</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,031</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,549</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Foreign</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,057</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,809</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,335</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,061</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13,840</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">17,884</p>
</td></tr>
</table>
<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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32857-109319<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 11.C)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330215-122817<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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.5.Q1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 14<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32705-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 270<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6424409&amp;loc=d3e44925-109338<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -URI http://asc.fasb.org/topic&amp;trid=2144680<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6424122&amp;loc=d3e41874-109331<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<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)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&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_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>dtr-types: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>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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422776296">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Options<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Note 8 - Options</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 8 &#8211;&#160;Options</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company has stock option plans which authorize the grant of stock options to eligible employees, directors and other individuals to purchase up to an aggregate of &#160;461 thousand shares of common stock, of which 52 thousand are outstanding as of December 31, 2020. &#160;All options granted under the plans are granted at current market value at the date of grant, and may be exercised between six months and ten years following the date of grant. &#160;The plans are intended to advance the interest of the Company by attracting and ensuring retention of competent directors, employees and executive personnel, and to provide incentives to those individuals to devote their utmost efforts to the advancement of stockholder value. &#160;Changes in stock options were as follows:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"/>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:114.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Shares<br/>(000&#8217;s)</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="2" style="width:346.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Price Range <br/>Per Share</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>2021</b></p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Granted</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">-</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">- - -</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expired or canceled</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">3</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">74.64 - 77.05</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Exercised</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">14</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 77.05</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total outstanding at December 31</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">52</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">33.30 - 77.05</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total exercisable at December 31</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">34</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">33.30 - 77.05</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:114.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Shares<br/>(000&#8217;s)</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:346pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Price Range <br/>Per Share</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>2020</b></p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Granted</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">77.05 - 77.05</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expired or canceled</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">1</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">58.50 - 77.05</p>
</td></tr>
<tr><td style="width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Exercised</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">8</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 74.64</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total outstanding at December 31</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">69</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 77.05</p>
</td></tr>
<tr><td style="width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total exercisable at December 31</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">33</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 74.64</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.45pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Shares<br/>(000&#8217;s)</p>
</td><td style="width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:346.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Price Range <br/>Per Share</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>2019</b></p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.45pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:346.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Granted</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">-</p>
</td><td style="width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">- - -</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expired or canceled</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2</p>
</td><td style="background-color:#CCEEFF;width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">58.50 - 74.64</p>
</td></tr>
<tr><td style="width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Exercised</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">7</p>
</td><td style="width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">24.00 - 58.50</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total outstanding at December 31</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">52</p>
</td><td style="background-color:#CCEEFF;width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 74.64</p>
</td></tr>
<tr><td style="width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total exercisable at December 31</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">33</p>
</td><td style="width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 74.64</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">For the years ended December&#160;31, 2021, 2020 and 2019, the Company reduced current income taxes payable by $39, $7 and $23, respectively, for the income tax benefit attributable to sale by optionees of common stock received upon the exercise of stock options.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Stock-Based Compensation</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">In 2021, the Company recognized $166 in equity compensation cost, compared to $160 in 2020 and $113 in 2019. &#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The fair value of each option grant is estimated on the date of grant using the Black-Scholes option pricing model with the following weighted average assumptions:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="7" style="width:610.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Years ended December 31,</p>
</td></tr>
<tr><td style="width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:139.5pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:124pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:136.15pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expected dividend amount per quarter</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:139.5pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:124pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.2943</p>
</td><td style="background-color:#CCEEFF;width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:136.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expected stock price volatility</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:139.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:124pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">27.5%</p>
</td><td style="width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:136.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Risk-free interest rate</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:139.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:124pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.56%</p>
</td><td style="background-color:#CCEEFF;width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:136.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expected life of options</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:139.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:124pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5.3 years</p>
</td><td style="width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:136.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The per share weighted average fair value of options granted during 2020 is $16.17. No options were granted in 2021 or 2019.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt">All UTMD options vest over a four-year service period. &#160;At December 31, 2021 there was $286 total unrecognized compensation expense related to non-vested stock options under the plans. A $172 portion of the cost is expected to be recognized over the next twelve months, and the remaining $114 recognized over the next 2 years. Expected dividend amounts were estimated based on the actual cash dividend rate at the time the options were granted and an estimate of future dividends based on past dividend rate changes as well as management&#8217;s expectations of future dividend rates over the expected holding period of the options. &#160;Expected volatility is based on UTMD&#8217;s historical volatility over recent periods of time and trends in that volatility, giving weight to more recent periods. &#160;Risk free interest rates were estimated based on actual U.S. Treasury Securities Interest rates as reported by the Federal Reserve Bank for periods of time equivalent to the holding periods estimated for the options on the dates the options were granted. &#160;Expected term of options were estimated based on historical holding periods for similar options previously granted by UTMD to employees and directors. &#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The following table summarizes information about stock options outstanding at December 31, 2021:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td colspan="3" style="width:210.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="6" style="width:590.4pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Options Outstanding</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="4" style="width:385.9pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Options Exercisable</p>
</td></tr>
<tr><td style="width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td colspan="3" style="width:210.4pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Range of Exercise Prices</p>
</td><td style="width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Number Outstanding</p>
</td><td style="width:47.4pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Weighted Average Remaining Contractual Life (Years)</p>
</td><td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Weighted Average Exercise Price</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Number Exercisable</p>
</td><td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Weighted Average Exercise Price</p>
</td></tr>
<tr><td style="width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td colspan="3" style="width:210.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center"> &#160;</p>
</td><td style="width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:47.4pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">$</p>
</td><td style="background-color:#CCEEFF;width:83.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33.30</p>
</td><td style="background-color:#CCEEFF;width:42.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">-</p>
</td><td style="background-color:#CCEEFF;width:85.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">58.50</p>
</td><td style="background-color:#CCEEFF;width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">15,024</p>
</td><td style="background-color:#CCEEFF;width:47.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3.44 </p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">52.37</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">15,024</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">52.37</p>
</td></tr>
<tr><td style="width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:83.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">74.64</p>
</td><td style="width:42.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">-</p>
</td><td style="width:85.25pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">77.05</p>
</td><td style="width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">36,834</p>
</td><td style="width:47.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7.74</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">76.12</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,263</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">75.82</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">$</p>
</td><td style="background-color:#CCEEFF;width:83.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33.30</p>
</td><td style="background-color:#CCEEFF;width:42.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#7F7F7F;text-align:center"><span style="color:#000000">-</span></p>
</td><td style="background-color:#CCEEFF;width:85.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#7F7F7F"><span style="color:#000000">77.05</span></p>
</td><td style="background-color:#CCEEFF;width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">51,858</p>
</td><td style="background-color:#CCEEFF;width:47.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6.49</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">69.24</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">34,287</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">65.55</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:601.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="7" style="width:473.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td></tr>
<tr><td style="width:601.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:108.25pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:55.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:96.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:67.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:105.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:601.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Intrinsic Value of Stock Options Exercised</p>
</td><td style="background-color:#CCEEFF;width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:108.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">591</p>
</td><td style="background-color:#CCEEFF;width:55.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:96.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">371</p>
</td><td style="background-color:#CCEEFF;width:67.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:105.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">354</p>
</td></tr>
<tr><td style="width:601.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Intrinsic Value of Stock Options Outstanding</p>
</td><td style="width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:108.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,595</p>
</td><td style="width:55.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:96.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,178</p>
</td><td style="width:67.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:20.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:105.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,553</p>
</td></tr>
</table>
<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 share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -URI http://asc.fasb.org/topic&amp;trid=2228938<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>dtr-types: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>30
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422746360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Geographic Information<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_fil_GeographicInformationTextBlock', window );">Note 9 - Geographic Information</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 9 &#8211;&#160;Geographic Information</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company had sales in the following geographic areas based on the customer&#8217;s country of domicile:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:560.1pt" valign="top"/><td style="width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">United States</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">30,659</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">25,866</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">27,493</p>
</td></tr>
<tr><td style="width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Europe</p>
</td><td style="width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,434</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,399</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">8,906</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Other</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,961</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,913</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,505</p>
</td></tr>
</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_GeographicInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Note 9 - Geographic Information, during the indicated time 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;">fil_GeographicInformationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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>31
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422707608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Geographic Long-Lived Assets Information<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_fil_GeographicLongLivedAssetsInformationTextBlock', window );">Note 10 - Geographic Long-Lived Assets Information</a></td>
<td class="text"><span style="border-bottom:1px solid #000000">Note 10 &#8211;&#160;Long-lived Assets by Geographic Area</span> &#160; <p style="font:10pt Times New Roman;margin:0">The Company&#8217;s long-lived assets by geographic area were as follows:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:560.1pt" valign="top"/><td style="width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">United States</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,104</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">23,327</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">27,605</p>
</td></tr>
<tr><td style="width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">England</p>
</td><td style="width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,339</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">21,871</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">23,548</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Ireland</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,990</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,173</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,639</p>
</td></tr>
<tr><td style="background-color:#FFFFFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Australia</p>
</td><td style="background-color:#FFFFFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">392</p>
</td><td style="background-color:#FFFFFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">440</p>
</td><td style="background-color:#FFFFFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#FFFFFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">423</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Canada</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">653</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">672</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">686</p>
</td></tr>
<tr><td style="background-color:#FFFFFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#FFFFFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#FFFFFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_GeographicLongLivedAssetsInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Note 10 - Geographic Long-Lived Assets Information, during the indicated time 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;">fil_GeographicLongLivedAssetsInformationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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>32
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386417864008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Revenues By Product Category And Region<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_fil_RevenuesbyproductcategoryandregionTextBlock', window );">Note 11 - Revenues By Product Category And Region</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 11 &#8211;&#160;Revenues by Product Category and Geographic Region</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Global revenues by product category:</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:508.15pt" valign="top"> </td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Obstetrics</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,675</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,523</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,000</p>
</td></tr>
<tr><td style="width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gynecology/ Electrosurgery/ Urology</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">21,973</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">20,552</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">25,354</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Neonatal</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,691</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,870</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,066</p>
</td></tr>
<tr><td style="width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Blood Pressure Monitoring and Accessories</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">15,715</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,233</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,484</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total:</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">49,054</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">42,178</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">46,904</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Included in the Global revenues (above) were OUS revenues by product category:</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:508.15pt" valign="top"> </td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Obstetrics</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">735</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">846</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">947</p>
</td></tr>
<tr><td style="width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gynecology/ Electrosurgery/ Urology</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,053</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,934</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13,731</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Neonatal</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,347</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,490</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,412</p>
</td></tr>
<tr><td style="width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Blood Pressure Monitoring and Accessories</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,260</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,042</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,321</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total:</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">18,395</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,312</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,411</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"/>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_RevenuesbyproductcategoryandregionTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Revenues By Product Category And Region, during the indicated time 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;">fil_RevenuesbyproductcategoryandregionTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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>33
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422671544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Product Sale and Purchase Commitments<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_fil_ProductSaleAndPurchaseCommitmentsTextBlock', window );">Note 12 - Product Sale and Purchase Commitments</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 12 - Product Sale and Purchase Commitments</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company has had license agreements for the rights to develop and market certain products or technologies owned by unrelated parties. &#160;The confidential terms of such agreements are unique and varied, depending on many factors relating to the value and stage of development of the technology licensed. &#160;Royalties on future product sales are a normal component of such agreements and are included in the Company&#8217;s cost of goods sold on an ongoing basis.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">In 2021, 2020 and 2019, UTMD received royalties of $15, $20 and $6, respectively, for the use of intellectual property. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">UTMD had $4,891 in operating lease and purchase commitments as of December 31, 2021.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_ProductSaleAndPurchaseCommitmentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Note 12 - Product Sale and Purchase Commitments, during the indicated time 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;">fil_ProductSaleAndPurchaseCommitmentsTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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>34
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416955288">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Employee Benefit Plans<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock', window );">Note 13 - Employee Benefit Plans</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 13 &#8211;&#160;Employee Benefit Plans</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company sponsors a contributory 401(k) savings plan for U.S. employees, and contributory retirement plans for Ireland, UK, Australia and Canada employees. &#160;The Company&#8217;s matching contribution is determined annually by the board of directors. &#160;Company contributions were approximately $165, $167 and $171 for the years ended December 31, 2021, 2020 and 2019, respectively.</p>
<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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 retirement benefits.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 55<br> -Paragraph 17<br> -URI http://asc.fasb.org/extlink&amp;oid=123450688&amp;loc=d3e4179-114921<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section S99<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=21916913&amp;loc=d3e273930-122802<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (o)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (p)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 70<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=49170846&amp;loc=d3e28014-114942<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -URI http://asc.fasb.org/topic&amp;trid=2235017<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 60<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=6414203&amp;loc=d3e39689-114964<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iv)(03)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (q)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (r)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (l)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 715<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (r)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123447040&amp;loc=d3e1928-114920<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_PensionAndOtherPostretirementBenefitsDisclosureTextBlock</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>dtr-types: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>35
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422791224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Leases<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_LesseeOperatingLeasesTextBlock', window );">Note 14 - Leases</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 14 &#8211;&#160;Leases</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">UTMD has operating leases for a portion of its parking lot at its Midvale facility and an automobile at its Ireland facility. &#160;The remaining lease term on the parking lot is 10 years and on the automobile it is 30 months. &#160;There are no options to extend or terminate the leases. &#160;The parking lot lease contains a provision that requires an adjustment every five years to the lease payment based on the change in the Consumer Price Index. &#160;This adjustment occurred in 2021 requiring an increase of $87 to the value of the right-of-use asset and lease liabilities. UTMD has no other leases yet to commence. &#160;As neither lease contains implicit rates, UTMD&#8217;s incremental borrowing rate, based on information available at adoption date, was used to determine the present value of the leases.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Operating lease costs for the years ended December 31, 2021, 2020, and 2019 were $63, $61, and $60, respectively.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Supplemental balance sheet information related to operating leases was as follows (<i>in thousands</i>):</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<br/><table style="border-collapse:collapse;width:100%"><tr style="height:23.85pt"><td style="width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">As of December 31, 2021</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Operating lease right-of-use assets</p>
</td><td style="background-color:#CCEEFF;width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$449</p>
</td></tr>
<tr><td style="width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><span style="-sec-ix-hidden:fact7">Operating lease liabilities &#8211;&#160;current (included in Accrued Expenses)</span></p>
</td><td style="width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">52</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Operating lease liabilities &#8211;&#160;long term</p>
</td><td style="background-color:#CCEEFF;width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right"><span style="border-bottom:1px solid #000000">396</span></p>
</td></tr>
<tr><td style="width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total operating lease liabilities</p>
</td><td style="width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$449</p>
</td></tr>
</table>
<table style="border-collapse:collapse;width:100%"><tr style="height:23.75pt"><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Maturities of operating lease liabilities at December 31, 2021 were as follows (<i>in thousands</i>):</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">As of December 31, 2021</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2022</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$66</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2023</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">66</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2024</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">57</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2025</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">49</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2026</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">49</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Thereafter</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">227</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> &#160;&#160;&#160;&#160;Total lease payments</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$514</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> &#160;&#160;&#160;&#160;Less: imputed interest</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(65)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> &#160;&#160;&#160;&#160;Total lease liabilities</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$449</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr style="height:23.75pt"><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">The following table provides information on the lease terms and discount rates:</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">As of December 31, 2021</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Weighted average remaining lease term &#160;(in years)</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9.1 years</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Weighted average discount rate</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3.6%</p>
</td></tr>
</table>
<p style="font:12pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:10pt">&#160;</p>
<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_LesseeOperatingLeasesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -URI http://asc.fasb.org/subtopic&amp;trid=77888251<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_LesseeOperatingLeasesTextBlock</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>dtr-types: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>36
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422765112">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - CSI Distribution Agreement Purchase Disclosure<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_IntangibleAssetsDisclosureTextBlock', window );">Note 15 - CSI Distribution Agreement Purchase Disclosure</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 15 &#8211;&#160;Distribution Agreement Purchase</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">UTMD completed the purchase of exclusive U.S. distribution rights for the Filshie Clip System from CooperSurgical, Inc. (CSI) on February 1, 2019, after which CSI will no longer sell the FILSHIE Clip System and UTMD will distribute the FILSHIE Clip System directly to clinical facilities in the U.S. The $21,000 purchase price represents an identifiable intangible asset which will be straight-line amortized and recognized as part of G&amp;A expenses over the 4.75 year remaining life of the prior CSI distribution agreement with Femcare. &#160;As part of the agreement, UTMD also purchased the remaining CSI inventory for approximately $2,100.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<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://fasb.org/us-gaap/role/ref/legacyRef<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>dtr-types: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>37
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422621832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Earnings Per Share<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_EarningsPerShareTextBlock', window );">Note 16 - Earnings Per Share</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 16 &#8211;&#160;Earnings Per Share</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Basic earnings per share is calculated by dividing net income attributable to the common stockholders of the company by the weighted average number of common shares outstanding during the period. &#160;Diluted earnings per share is calculated by assuming the exercise of stock options at the closing price of stock at the end of 2021.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share:</p>
<table style="border-collapse:collapse;width:100%"><tr style="height:12.5pt"><td colspan="6" style="width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td></tr>
<tr style="height:12.5pt"><td colspan="6" style="width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td></tr>
<tr style="height:12.5pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"/><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:12pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>Numerator </b><i>(in thousands)</i></p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td></tr>
<tr style="height:11.2pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net income</p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,788</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,798</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,727</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td></tr>
<tr style="height:12pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>Denominator</b></p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Weighted average shares, basic</p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,647</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,658</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,721</p>
</td></tr>
<tr style="height:12.5pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Dilutive effect of stock options</p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">13</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">14</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">18</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Diluted shares</p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,660</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,672</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,739</p>
</td></tr>
<tr style="height:12.5pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings per share, basic</p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">4.05</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">2.95</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3.96</p>
</td></tr>
<tr style="height:12.5pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings per share, diluted</p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">4.04</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">2.94</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3.94</p>
</td></tr>
</table>
<p style="font:12pt Times New Roman;margin:0">&#160;</p>
<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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=109243012&amp;loc=SL65017193-207537<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -URI http://asc.fasb.org/topic&amp;trid=2144383<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-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_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>dtr-types: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>38
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422633384">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Recent Accounting Pronouncements<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Note 17 - Recent Accounting Pronouncements</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 17 &#8211;&#160;Recent Accounting Pronouncements</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company has determined that other recently issued accounting standards will either have no material impact on its consolidated financial position, results of operations or cash flows, or will not apply to its operations.</p>
<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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (g)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -URI http://asc.fasb.org/topic&amp;trid=2122394<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 105<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124434974&amp;loc=SL124442142-165695<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (i)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=SL108384541-122693<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124402435&amp;loc=SL124402458-218513<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123597120&amp;loc=SL121967933-165497<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (i)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123597120&amp;loc=SL121967933-165497<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(ii)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (g)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=121322162&amp;loc=SL121327923-165333<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (d)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124402435&amp;loc=SL124402458-218513<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (j)<br> -URI http://asc.fasb.org/extlink&amp;oid=123338486&amp;loc=SL49131195-203048<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(iv)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section S99<br> -Paragraph 5<br> -Subparagraph (SAB Topic 11.M.Q2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122038215&amp;loc=d3e31137-122693<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (f)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=120154821&amp;loc=SL120154904-197079<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 65<br> -Paragraph 6<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123597120&amp;loc=SL121967933-165497<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 10<br> -Section 65<br> -Paragraph 4<br> -Subparagraph (e)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=122150657&amp;loc=SL122150809-237846<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 65<br> -Paragraph 8<br> -Subparagraph (e)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123459177&amp;loc=SL121830611-158277<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Topic 848<br> -SubTopic 10<br> -Name Accounting Standards Codification<br> -Section 65<br> -Paragraph 2<br> -Publisher FASB<br> -Subparagraph (c)<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_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock</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>dtr-types: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>39
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422626808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 18 - Subsequent Events<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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</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_us-gaap_SubsequentEventsTextBlock', window );">Note 18 - Subsequent Events</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Note 18 &#8211;&#160;Subsequent Events</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company evaluated its December 31, 2021 financial statements for subsequent events through the date the financial statements were issued. &#160;The Company is not aware of any subsequent events which would require recognition or disclosure in the financial statements. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<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_SubsequentEventsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -URI http://asc.fasb.org/topic&amp;trid=2122774<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 855<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=6842918&amp;loc=SL6314017-165662<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_SubsequentEventsTextBlock</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>dtr-types: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>40
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422671544">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Use of Estimates in The Preparation of Financial Statements (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_UseOfEstimates', window );">Use of Estimates in The Preparation of Financial Statements</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Use of Estimates in the Preparation of Financial Statements</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">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. &#160;Although actual results could differ from those estimates, management believes it has considered and disclosed all relevant information in making its estimates that materially affect reported performance and current values.</p>
<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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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_UseOfEstimates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 12<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6191-108592<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6161-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6143-108592<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6061-108592<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6132-108592<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e5967-108592<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_UseOfEstimates</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>dtr-types: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>41
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422713816">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Principles of Consolidation (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_ConsolidationPolicyTextBlock', window );">Principles of Consolidation</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Principles of Consolidation</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The consolidated financial statements include those of the Company and its subsidiaries. &#160;All intercompany accounts and transactions have been eliminated in consolidation. </p>
<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_ConsolidationPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting.  The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=d3e5614-111684<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_ConsolidationPolicyTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>42
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422689752">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_CashAndCashEquivalentsPolicyTextBlock', window );">Cash and Cash Equivalents</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Cash and Cash Equivalents</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">For purposes of the consolidated statement of cash flows, the Company considers cash on deposit and short-term investments with original maturities of three months or less to be cash and cash equivalents.</p>
<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_CashAndCashEquivalentsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=123431023&amp;loc=d3e4273-108586<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_CashAndCashEquivalentsPolicyTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>43
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418147560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Concentration of Credit Risk (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_ConcentrationRiskDisclosureTextBlock', window );">Concentration of Credit Risk</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Concentration of Credit Risk</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The primary concentration of credit risk consists of trade receivables. &#160;In the normal course of business, the Company provides credit terms to its customers. &#160;Accordingly, the Company performs ongoing credit evaluations of its customers and maintains allowances for possible losses which, when realized, have been within the range of management's expectations as reflected by its reserves. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company's customer base consists of hospitals, medical device distributors, physician practices and others directly related to healthcare providers, as well as other manufacturing companies. Although the Company is affected by the well-being of the global healthcare industry, management does not believe significant trade receivable credit risk exists at December&#160;31, 2021 except under an extreme global financial crisis.</p>
<p style="font:10pt Times New Roman;margin:0">The Company maintains its cash in bank deposit accounts in addition to Fidelity Investment money market accounts. &#160;The Company has not experienced any losses in such accounts and believes it is not exposed to a significant credit risk on cash and cash equivalent balances. </p>
<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_ConcentrationRiskDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI http://asc.fasb.org/topic&amp;trid=2134479<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_ConcentrationRiskDisclosureTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>44
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422720824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Accounts Receivable (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_ReceivablesPolicyTextBlock', window );">Accounts Receivable</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Accounts Receivable</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Accounts receivable are amounts due on product sales and are unsecured. &#160;Accounts receivable are carried at their estimated collectible amounts. &#160;Credit is generally extended on a short-term basis; thus, accounts receivable do not bear interest although a late charge may be applied to such receivables that are past the due date. &#160;Accounts receivable are periodically evaluated for collectability based on past credit history of customers and current market conditions. &#160;Provisions for losses on accounts receivable are determined on the basis of loss experience, known and inherent risk in the account balance and current economic conditions (see note 2).</p>
<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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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_ReceivablesPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 receivable. Includes, but is not limited to, accounts receivable and financing receivable.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5033-111524<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10178-111534<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10149-111534<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=84159169&amp;loc=d3e10133-111534<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_ReceivablesPolicyTextBlock</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>dtr-types: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>45
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422626808">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Inventories (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_InventoryPolicyTextBlock', window );">Inventories</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Inventories</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Finished products, work-in-process, raw materials and supplies inventories are stated at the lower of cost and net realizable value (NRV) computed on a first-in, first-out method. &#160;Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable costs of completion, disposal, and transportation (see note 2). </p>
<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_InventoryPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4556-108314<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 912<br> -SubTopic 330<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6471895&amp;loc=d3e55923-109411<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=116847112&amp;loc=d3e4492-108314<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124437754&amp;loc=d3e543-108305<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 330<br> -URI http://asc.fasb.org/topic&amp;trid=2126998<br><br>Reference 7: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_InventoryPolicyTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>46
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422788760">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_PropertyPlantAndEquipmentPolicyTextBlock', window );">Property and Equipment</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Property and Equipment</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Property and equipment are stated at cost. &#160;Depreciation and amortization are computed using the straight-line method over estimated useful lives as follows:</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td colspan="2" style="width:391.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td></tr>
<tr><td style="width:298.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Building and improvements</p>
</td><td style="width:92.7pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">15 - 40 years</p>
</td></tr>
<tr><td style="width:298.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Furniture, equipment and tooling</p>
</td><td style="width:92.7pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">3 - 10 years</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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_PropertyPlantAndEquipmentPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99779-112916<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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(a))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 958<br> -SubTopic 360<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=120429125&amp;loc=d3e99893-112916<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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_PropertyPlantAndEquipmentPolicyTextBlock</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>dtr-types: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>47
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422740632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Long-lived Assets (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock', window );">Long-lived Assets</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Long-Lived Assets</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company evaluates its long-lived assets in accordance with Accounting Standards Codification (ASC) 360, &#8220;Accounting for the Impairment of Long-Lived Assets.&#8221; &#160;Long-lived assets held and used by the Company are reviewed for impairment whenever events or changes in circumstances indicate that their net book value may not be recoverable. &#160;When such factors and circumstances exist, the Company compares the projected undiscounted future cash flows associated with the related asset or group of assets over their estimated useful lives against their respective carrying amounts. &#160;Impairment, if any, is based on the excess of the carrying amount over the fair value of those assets and is recorded in the period in which the determination was made. </p>
<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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 05<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=109226317&amp;loc=d3e202-110218<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 5.CC)<br> -URI http://asc.fasb.org/extlink&amp;oid=27011434&amp;loc=d3e125687-122742<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_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>48
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386417864008">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock', window );">Intangible Assets</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Intangible Assets</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Costs associated with the acquisition of patents, trademarks, trade names, customer relationships, regulatory approvals &amp; product certifications, license rights and non-compete agreements are capitalized, and are being amortized using the straight-line method over periods ranging from 5 to 20 years. UTMD&#8217;s goodwill is tested for impairment annually, in the fourth quarter of each year, in accordance with ASC 350. UTMD also performs impairment tests contemporaneously, if circumstances change that would more than likely reduce the fair value of goodwill below its net book value. &#160;If UTMD determines that its goodwill is impaired, a second step is completed to measure the amount of the impairment loss. UTMD does not expect its goodwill to become impaired in the foreseeable future. &#160;Estimated future amortization expenses on intangible assets held as of December 31, 2021, using the 2021 year-end 1.3536 USD/GBP and0.7268 USD/AUD currency exchange rates, is about $6,542 in 2022, $5,805 in 2023, $2,121 in 2024, $2,121 in 2025, and $463 in 2026 (see note 2).</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">In 2019, $21,000 in intangible assets were acquired from CSI. &#160;The future amortization expenses on those assets are estimated to be $4,421 per year in 2022, and $3,684 in 2023 (see note 15).</p>
<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_GoodwillAndIntangibleAssetsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<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_GoodwillAndIntangibleAssetsPolicyTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>49
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422725048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy', window );">Stock-based Compensation</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Stock-Based Compensation </span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">At December 31, 2021, the Company has stock-based employee compensation plans, which are described more fully in note 8. &#160;The Company accounts for stock compensation under ASC 718, <i>Share-Based Payment</i>. &#160;This statement requires the Company to recognize compensation cost based on the grant date fair value of options granted to employees and directors. In 2021, the Company recognized $166 in stock-based compensation cost compared to $160 in 2020 and $113 in 2019.</p>
<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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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_ShareBasedCompensationOptionAndIncentivePlansPolicy">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b),(f)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&amp;loc=d3e5047-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_ShareBasedCompensationOptionAndIncentivePlansPolicy</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>dtr-types: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>50
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422775208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Revenue Recognition (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_RevenueRecognitionPolicyTextBlock', window );">Revenue Recognition</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Revenue Recognition</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company recognizes revenue at the time of product shipment as UTMD meets its contractual performance obligations to the customer at the time of shipment. Revenue recognized by UTMD is based upon the consideration to which UTMD is entitled from its customers as a result of shipping a physical product, in accordance with the documented arrangements and fixed contracts in which the selling price was fixed prior to the Company&#8217;s acceptance of an order. Revenue from service sales, which are immaterial to UTMD, is generally recognized when the service is completed and invoiced. As demonstrated by decades of experience in successful and consistent collections, there is very minor and insignificant uncertainty regarding the collectability of invoiced amounts reasonably within the terms of the Company&#8217;s contracts. There are circumstances under which insignificant revenue may be recognized when product is not shipped, which meet the criteria of ASC 606: the Company provides engineering services, for example, design and production of manufacturing tooling that may be used in subsequent UTMD manufacturing of custom components for other companies. &#160;This revenue is recognized when UTMD&#8217;s performance obligations have been completed according to a fixed contractual agreement. &#160;UTMD includes handling fees charged to customers in revenues. </p>
<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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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_RevenueRecognitionPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 revenue. Includes revenue from contract with customer and from other sources.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123372394&amp;loc=d3e18823-107790<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_RevenueRecognitionPolicyTextBlock</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>dtr-types: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>51
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422688632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Income Taxes (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_IncomeTaxPolicyTextBlock', window );">Income Taxes</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Income Taxes</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company accounts for income taxes under ASC 740, &#8220;Accounting for Income Taxes,&#8221; whereby deferred taxes are computed under the asset and liability method. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company accounts for deferred taxes under ASC 740, &#8220;Accounting for Income Taxes,&#8221; which requires that all deferred income taxes are classified as noncurrent in a classified statement of financial position.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The TCJA contains a deemed repatriation transition tax (REPAT tax) on accumulated earnings and profits of the Company&#8217;s non-U.S. subsidiaries that have not been subject to U.S. tax. &#160;The Company has elected to pay its net REPAT tax over eight years. &#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company or one of its subsidiaries files income tax returns in the U.S. federal jurisdiction, in Utah, in the United Kingdom, in Australia, in Ireland and in Canada. &#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company recognizes interest accrued related to unrecognized tax benefits in interest expense and any related penalties in income taxes. The Company did not recognize any tax-related interest expense or have any tax penalties in 2019 or 2021. &#160;In 2020 the Company paid tax penalties of $4. </p>
<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_IncomeTaxPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32247-109318<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32847-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32840-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL116659661-227067<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI http://asc.fasb.org/extlink&amp;oid=123427490&amp;loc=d3e32280-109318<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 17<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32809-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_IncomeTaxPolicyTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>52
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422742584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Legal Costs (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_LegalCostsPolicyTextBlock', window );">Legal Costs</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Legal Costs</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The Company has been involved in lawsuits which are an expected consequence of its operations and in the ordinary course of business. &#160;The Company maintains a reserve for legal costs which are probable and estimated based on previous experience and known risk. &#160;The reserve for legal costs at December 31, 2021 and 2020 was  $96 and $113, respectively (see note 2).</p>
<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_LegalCostsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 legal costs incurred to protect or defend the entity's assets and rights, or to obtain assets, including monetary damages, or to obtain rights.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section S99<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=27011672&amp;loc=d3e149975-122751<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_LegalCostsPolicyTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>53
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422782952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Earnings Per Share (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_EarningsPerSharePolicyTextBlock', window );">Earnings Per Share</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Earnings per Share</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The computation of basic earnings per common share is based on the weighted average number of shares outstanding during each year. </p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The computation of earnings per common share assuming dilution is based on the weighted average number of shares outstanding during the year plus the weighted average common stock equivalents which would arise from the exercise of stock options outstanding using the treasury stock method and the average market price per share during the year.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt">The shares (in thousands) used in the computation of the Company&#8217;s basic and diluted earnings per share are reconciled as follows:</p>
<p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:960.75pt" valign="top"/><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:960.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> Weighted average number of shares outstanding &#8211;&#160;basic</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,647</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,658</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,721</p>
</td></tr>
<tr><td style="width:960.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> Dilutive effect of stock options</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">18</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:960.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> Weighted average number of shares outstanding, assuming dilution</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,660</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,672</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,739</p>
</td></tr>
</table>
<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_EarningsPerSharePolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3630-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_EarningsPerSharePolicyTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>54
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422740632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Presentation of Sales and Similar Taxes (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_fil_PresentationOfSalesAndSimilarTaxesTextBlock', window );">Presentation of Sales and Similar Taxes</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Presentation of Sales and Similar Taxes</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Sales tax on revenue-producing transactions is recorded as a liability when the sale occurs. &#160;UTMD is not required to withhold sales tax on OUS sales, and at least 90% of domestic 2021 sales were to customers who are tax exempt or who are in jurisdictions where UTMD is not required to withhold sales tax.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_PresentationOfSalesAndSimilarTaxesTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Presentation of Sales and Similar Taxes, during the indicated time 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;">fil_PresentationOfSalesAndSimilarTaxesTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>55
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418140136">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Translation of Foreign Currencies (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock', window );">Translation of Foreign Currencies</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"><span style="border-bottom:1px solid #000000">Translation of Foreign Currencies</span></p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Assets and liabilities of the Company&#8217;s foreign subsidiaries are translated into U.S. dollars at the applicable exchange rates at year-end. &#160;Net gains or losses resulting from the translation of the Company&#8217;s assets and liabilities are reflected as a separate component of stockholders&#8217; equity. &#160;A negative translation impact on stockholders&#8217; equity reflects a current relative U.S. Dollar value higher than at the point in time that assets were actually acquired in a foreign currency. &#160;A positive translation impact would result from a U.S. dollar weaker in value than at the point in time foreign assets were acquired. &#160;Year-end translation gains or losses of non-functional currency bank account balances, e.g. EUR and AUD balances held by the UK subsidiary, are recognized as non-operating income or expense, as applicable.</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">Income and expense items are translated at the weighted average rate of exchange (based on when transactions actually occurred) during the year. </p>
<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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -URI http://asc.fasb.org/topic&amp;trid=2175825<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_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock</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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>56
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418121032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 17 - Recent Accounting Pronouncements: New Accounting Pronouncements, Policy (Policies)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PolicyTextBlockAbstract', window );"><strong>Policies</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_us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock', window );">New Accounting Pronouncements, Policy</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">The Company has determined that other recently issued accounting standards will either have no material impact on its consolidated financial position, results of operations or cash flows, or will not apply to its operations.</p>
<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_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>dtr-types: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_PolicyTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PolicyTextBlockAbstract</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>57
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418147560">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock', window );">Schedule of Weighted Average Number of Shares</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:960.75pt" valign="top"/><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:960.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> Weighted average number of shares outstanding &#8211;&#160;basic</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,647</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,658</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,721</p>
</td></tr>
<tr><td style="width:960.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> Dilutive effect of stock options</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14</p>
</td><td style="width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">18</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:960.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> Weighted average number of shares outstanding, assuming dilution</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,660</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,672</p>
</td><td style="background-color:#CCEEFF;width:69.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,739</p>
</td></tr>
</table>
<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://fasb.org/us-gaap/role/ref/legacyRef<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=124432515&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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>58
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418121032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock', window );">Schedule of Accounts and Other Receivables</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="4" style="width:343.95pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">December 31,</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"/><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.15pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accounts and other receivables:</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Accounts receivable&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,287</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,224</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Accrued interest and other&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">39</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Less allowance for doubtful accounts&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(156)</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(134)</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total accounts and other receivables&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,170</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,104</p>
</td></tr>
</table>
<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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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,4)<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>59
<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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422641496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventory, Current</a></td>
<td class="text"><p style="font:11pt Times New Roman;margin:0"/>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Inventories:</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">.</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Finished products&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,468</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,363</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Work-in-process&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,398</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,375</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Raw materials&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,730</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,484</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total inventories&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,596</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,222</p>
</td></tr>
</table>
<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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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></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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>60
<FILENAME>R46.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422745800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfGoodwillTextBlock', window );">Schedule of Goodwill</a></td>
<td class="text"><table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Goodwill:</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Balance as of January 1</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,164</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13,961</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Effect of foreign exchange&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(66)</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">203</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Subtractions as a result of impairment&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total Goodwill as of December 31&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,098</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,164</p>
</td></tr>
</table>
<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_ScheduleOfGoodwillTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 goodwill by reportable segment and in total which includes a rollforward schedule.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<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_ScheduleOfGoodwillTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>61
<FILENAME>R47.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422650280">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock', window );">Schedule of Finite-Lived Intangible Assets</a></td>
<td class="text"><p style="font:11pt Times New Roman;margin:0"/>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Other identifiable intangible assets:</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"/><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"/></tr>
<tr><td style="background-color:#CCEEFF;width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Patents&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,212</p>
</td><td style="background-color:#CCEEFF;width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,201</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Non-compete agreements&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">135</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">137</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Trademarks &amp; trade names&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,930</p>
</td><td style="background-color:#CCEEFF;width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,021</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Customer relationships&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,678</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,769</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/> Distribution agreements&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">21,000</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">21,000</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Regulatory approvals &amp; product certifications&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,910</p>
</td><td style="background-color:#CCEEFF;width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13,031</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total Other Identifiable Intangible Assets&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">55,865</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.05pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">56,159</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Accumulated amortization&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(38,552)</p>
</td><td style="background-color:#CCEEFF;width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(32,166)</p>
</td></tr>
<tr><td style="width:1041.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/> Other Identifiable Intangible Assets, Net&#160;</p>
</td><td style="width:26.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">17,313</p>
</td><td style="width:113.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.85pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">23,993</p>
</td></tr>
</table>
<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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>62
<FILENAME>R48.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422731160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock', window );">Schedule of Accrued Expenses</a></td>
<td class="text"><p style="font:11pt Times New Roman;margin:0"/>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accrued expenses:</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"/></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Income taxes payable&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">36</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Payroll and payroll taxes&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,225</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">946</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Reserve for litigation costs&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">96</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">113</p>
</td></tr>
<tr><td style="width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Other&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,627</p>
</td><td style="width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,941</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:1041.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:46.8pt"/>Total accrued expenses&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,984</p>
</td><td style="background-color:#CCEEFF;width:113.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,003</p>
</td></tr>
</table>
<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_ScheduleOfAccruedLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 components of accrued liabilities.</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_ScheduleOfAccruedLiabilitiesTableTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>63
<FILENAME>R49.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422621832">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock', window );">Quarterly Financial Information</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Unaudited Quarterly Data for 2021</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">First Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Second Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Third Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Fourth Quarter</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Sales</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,964</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,604</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,572</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,914</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gross Profit</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,947</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,785</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">8,073</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">8,112</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Income</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,024</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,426</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,206</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,131</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings Per Common Share (Diluted)</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.83</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.94</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1.15</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1.13</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Unaudited Quarterly Data for 2020</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">First Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Second Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Third Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Fourth Quarter</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Sales</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,902</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">8,787</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,479</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,010</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gross Profit</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,836</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,950</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,497</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,265</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Income</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,140</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,313</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,933</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,412</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings Per Common Share (Diluted)</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.84</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.36</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.80</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.94</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Unaudited Quarterly Data for 2019</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">First Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Second Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Third Quarter</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Fourth Quarter</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Sales</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,732</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,846</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,494</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,831</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gross Profit</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,773</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,500</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,379</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,814</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net Income</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,139</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,525</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,705</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,359</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings Per Common Share (Diluted)</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.84</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.94</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.99</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1.17</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0;color:#000000">&#160;</p>
<p style="font:10pt Times New Roman;margin:0"/>
<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_ScheduleOfQuarterlyFinancialInformationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 quarterly financial data. Includes, but is not limited to, financial information for fiscal quarters, cumulative effect of a change in accounting principle and earnings per share data.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 270<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124502072&amp;loc=d3e1280-108306<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_ScheduleOfQuarterlyFinancialInformationTableTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>64
<FILENAME>R50.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422739800">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Property and Equipment: Property, Plant and Equipment (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_PropertyPlantAndEquipmentTextBlock', window );">Property, Plant and Equipment</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="4" style="width:241.05pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">December 31,</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"/><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:97.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:1.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:99.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Land</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,690</p>
</td><td style="background-color:#CCEEFF;width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,725</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Buildings and improvements</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,172</p>
</td><td style="width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,531</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Furniture, equipment and tooling</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,660</p>
</td><td style="background-color:#CCEEFF;width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,750</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> <span style="-sec-ix-hidden:fact5"><span style="-sec-ix-hidden:fact6">Right-of-Use</span></span> Asset</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">449</p>
</td><td style="width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">377</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Construction-in-progress</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:97.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">898</p>
</td><td style="background-color:#CCEEFF;width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:99.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">527</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Total&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:97.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33,869</p>
</td><td style="width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:99.05pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33,910</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accumulated depreciation</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:97.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(22,802)</p>
</td><td style="background-color:#CCEEFF;width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:99.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(22,584)</p>
</td></tr>
<tr><td style="width:406.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Property and equipment, net</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:97.3pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,067</p>
</td><td style="width:1.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:42.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:99.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,326</p>
</td></tr>
</table>
<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_PropertyPlantAndEquipmentTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_PropertyPlantAndEquipmentTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>65
<FILENAME>R51.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418118824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Property and Equipment: Property Plant and Equipment by Location (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_fil_PropertyPlantAndEquipmentByLocationTextBlock', window );">Property Plant and Equipment by Location</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Dutch801SWC;margin:0;text-align:center"><span style="font-family:Times New Roman">December 31, 2021</span></p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">U.S. &amp; Canada</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">England &amp; Australia </p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Ireland</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Total</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Land</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">621</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">678</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">391</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,690</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Buildings and improvements</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,541</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,384</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,247</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,172</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Furniture, equipment and tooling</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,608</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">752</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,300</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,660</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Right-of-Use Asset</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">411</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">38</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">449</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Construction-in-progress</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">412</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">484</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">898</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Total&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">22,593</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,816</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,460</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33,869</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accumulated depreciation</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(18,168)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(1,164)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(3,470)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(22,802)</p>
</td></tr>
<tr><td style="width:520.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Property and equipment, net</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,425</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,652</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,990</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,067</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="10" style="width:832.3pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Dutch801SWC;margin:0;text-align:center"><span style="font-family:Times New Roman">December 31, 2020</span></p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"/><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">U.S. &amp; Canada</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">England &amp; Australia </p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Ireland</p>
</td><td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Total</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Land</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">621</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">684</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">420</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,725</p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Buildings and improvements</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,523</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,443</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,565</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,531</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Furniture, equipment and tooling</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,632</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">761</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,357</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,750</p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Right-of-Use Asset</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">361</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">377</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Construction-in-progress</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">36</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">491</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">527</p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><kbd style="margin-left:19.8pt"/>Total&#160;</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">22,173</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,888</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,849</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33,910</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accumulated depreciation</p>
</td><td style="background-color:#CCEEFF;width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(17,934)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(974)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(3,676)</p>
</td><td style="background-color:#CCEEFF;width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(22,584)</p>
</td></tr>
<tr><td style="width:520.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Property and equipment, net</p>
</td><td style="width:29.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:30.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,239</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,914</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,173</p>
</td><td style="width:49.55pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:29.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,326</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_PropertyPlantAndEquipmentByLocationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Property Plant and Equipment by Location, during the indicated time 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;">fil_PropertyPlantAndEquipmentByLocationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>66
<FILENAME>R52.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422641496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock', window );">Schedule of Deferred Tax Assets and Liabilities</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:99.98%"><tr><td style="width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="7" style="width:588.95pt;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">December 31,</p>
</td></tr>
<tr><td style="width:795.65pt" valign="top"/><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:113.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Inventory write-downs and differences due to UNICAP</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">88</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">86</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">84</p>
</td></tr>
<tr><td style="width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Allowance for doubtful accounts</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">31</p>
</td><td style="width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">32</p>
</td><td style="width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Accrued liabilities and reserves</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">58</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">68</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">55</p>
</td></tr>
<tr><td style="width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Depreciation and amortization</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,925)</p>
</td><td style="width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(3,034)</p>
</td><td style="width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,933)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Deferred income taxes, net</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,748)</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,848)</p>
</td><td style="background-color:#CCEEFF;width:113.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(2,761)</p>
</td></tr>
</table>
<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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-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_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>67
<FILENAME>R53.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422688632">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock', window );">Schedule of Components of Income Tax Expense (Benefit)</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Years ended December 31,</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"/><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Current</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,983</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,253</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,467</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Deferred</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">290</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(211)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(310)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,273</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,042</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,157</p>
</td></tr>
</table>
<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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-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_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>68
<FILENAME>R54.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386417609960">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock', window );">Schedule of Effective Income Tax Rate Reconciliation</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Years ended December 31,</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"/><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Federal income tax expense at the statutory rate</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,520</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,915</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,512</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">State income taxes</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">448</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">369</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(124)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Foreign income taxes (blended rate)</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,010</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">550</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">985</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">ETI, manufacturing deduction and tax credits</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(6)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(7)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(9)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Deemed repatriation transition tax </p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#FF0000;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">263</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(266)</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">US Taxes on foreign income</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(99)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(35)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">59</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Change in Rate</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">391</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Other</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(13)</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,273</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,042</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,157</p>
</td></tr>
</table>
<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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income 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://fasb.org/us-gaap/role/ref/legacyRef<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=121826272&amp;loc=d3e32687-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_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>69
<FILENAME>R55.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418126584">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock', window );">Schedule of Income before Income Tax, Domestic and Foreign</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Years ended December 31,</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"/><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Domestic</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">12,004</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,031</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,549</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Foreign</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,057</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,809</p>
</td><td style="width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,335</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,061</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13,840</p>
</td><td style="background-color:#CCEEFF;width:113.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">17,884</p>
</td></tr>
</table>
<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_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 income before income tax between domestic and foreign jurisdictions.</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/2009/role/commonPracticeRef<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)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&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_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>70
<FILENAME>R56.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422690872">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock', window );">Schedule of Share-based Compensation, Stock Options, Activity</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0"/>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:114.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Shares<br/>(000&#8217;s)</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="2" style="width:346.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Price Range <br/>Per Share</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>2021</b></p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Granted</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">-</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">- - -</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expired or canceled</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">3</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">74.64 - 77.05</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Exercised</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">14</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 77.05</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total outstanding at December 31</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">52</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">33.30 - 77.05</p>
</td></tr>
<tr><td style="width:795.9pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total exercisable at December 31</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">34</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="2" style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">33.30 - 77.05</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:114.8pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Shares<br/>(000&#8217;s)</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:27pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:346pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Price Range <br/>Per Share</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>2020</b></p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Granted</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">77.05 - 77.05</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expired or canceled</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">1</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">58.50 - 77.05</p>
</td></tr>
<tr><td style="width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Exercised</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">8</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 74.64</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total outstanding at December 31</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">69</p>
</td><td style="background-color:#CCEEFF;width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 77.05</p>
</td></tr>
<tr><td style="width:795.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total exercisable at December 31</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">33</p>
</td><td style="width:101.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:345.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 74.64</p>
</td></tr>
</table>
<p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.45pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Shares<br/>(000&#8217;s)</p>
</td><td style="width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:346.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Price Range <br/>Per Share</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>2019</b></p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.45pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:346.3pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Granted</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">-</p>
</td><td style="width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">- - -</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expired or canceled</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2</p>
</td><td style="background-color:#CCEEFF;width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">58.50 - 74.64</p>
</td></tr>
<tr><td style="width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Exercised</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">7</p>
</td><td style="width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">24.00 - 58.50</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total outstanding at December 31</p>
</td><td style="background-color:#CCEEFF;width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">52</p>
</td><td style="background-color:#CCEEFF;width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 74.64</p>
</td></tr>
<tr><td style="width:795.7pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total exercisable at December 31</p>
</td><td style="width:27.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:114.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">33</p>
</td><td style="width:101.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:27.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:346.3pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">26.52 - 74.64</p>
</td></tr>
</table>
<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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&amp;loc=d3e5070-113901<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>71
<FILENAME>R57.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422715496">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock', window );">Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td colspan="7" style="width:610.3pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">Years ended December 31,</p>
</td></tr>
<tr><td style="width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:139.5pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:124pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:136.15pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expected dividend amount per quarter</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:139.5pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:124pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.2943</p>
</td><td style="background-color:#CCEEFF;width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:136.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expected stock price volatility</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:139.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:124pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">27.5%</p>
</td><td style="width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:136.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Risk-free interest rate</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:139.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="background-color:#CCEEFF;width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:124pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">0.56%</p>
</td><td style="background-color:#CCEEFF;width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:136.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
<tr><td style="width:775.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Expected life of options</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:139.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td><td style="width:70.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:124pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5.3 years</p>
</td><td style="width:86.5pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.6pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:136.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">-</p>
</td></tr>
</table>
<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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>72
<FILENAME>R58.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422760552">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock', window );">Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td colspan="3" style="width:210.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="6" style="width:590.4pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Options Outstanding</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td colspan="4" style="width:385.9pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Options Exercisable</p>
</td></tr>
<tr><td style="width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td colspan="3" style="width:210.4pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Range of Exercise Prices</p>
</td><td style="width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Number Outstanding</p>
</td><td style="width:47.4pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Weighted Average Remaining Contractual Life (Years)</p>
</td><td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Weighted Average Exercise Price</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Number Exercisable</p>
</td><td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">Weighted Average Exercise Price</p>
</td></tr>
<tr><td style="width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td colspan="3" style="width:210.4pt" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center"> &#160;</p>
</td><td style="width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:47.4pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">$</p>
</td><td style="background-color:#CCEEFF;width:83.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33.30</p>
</td><td style="background-color:#CCEEFF;width:42.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">-</p>
</td><td style="background-color:#CCEEFF;width:85.25pt" valign="top"><p style="font:10pt Times New Roman;margin:0">58.50</p>
</td><td style="background-color:#CCEEFF;width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">15,024</p>
</td><td style="background-color:#CCEEFF;width:47.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3.44 </p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">52.37</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">15,024</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:157.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">52.37</p>
</td></tr>
<tr><td style="width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:83.05pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">74.64</p>
</td><td style="width:42.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">-</p>
</td><td style="width:85.25pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">77.05</p>
</td><td style="width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">36,834</p>
</td><td style="width:47.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7.74</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">76.12</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,263</p>
</td><td style="width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">75.82</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:28.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">$</p>
</td><td style="background-color:#CCEEFF;width:83.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">33.30</p>
</td><td style="background-color:#CCEEFF;width:42.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#7F7F7F;text-align:center"><span style="color:#000000">-</span></p>
</td><td style="background-color:#CCEEFF;width:85.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;color:#7F7F7F"><span style="color:#000000">77.05</span></p>
</td><td style="background-color:#CCEEFF;width:98.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">51,858</p>
</td><td style="background-color:#CCEEFF;width:47.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6.49</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">69.24</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">34,287</p>
</td><td style="background-color:#CCEEFF;width:44.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:26.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">65.55</p>
</td></tr>
</table>
<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_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>73
<FILENAME>R59.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422775208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Geographic Information: Schedule Of Geographic Information (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_fil_ScheduleOfGeographicInformationTextBlock', window );">Schedule Of Geographic Information</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:560.1pt" valign="top"/><td style="width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">United States</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">30,659</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">25,866</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">27,493</p>
</td></tr>
<tr><td style="width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Europe</p>
</td><td style="width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">7,434</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,399</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">8,906</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Other</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,961</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,913</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,505</p>
</td></tr>
</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_ScheduleOfGeographicInformationTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Schedule Of Geographic Information, during the indicated time 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;">fil_ScheduleOfGeographicInformationTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>74
<FILENAME>R60.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422702520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock', window );">Schedule Of Long-Lived Assets By Geographic Area</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:560.1pt" valign="top"/><td style="width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">United States</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,104</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">23,327</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">27,605</p>
</td></tr>
<tr><td style="width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">England</p>
</td><td style="width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,339</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">21,871</p>
</td><td style="width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">23,548</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Ireland</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,990</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,173</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">2,639</p>
</td></tr>
<tr><td style="background-color:#FFFFFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Australia</p>
</td><td style="background-color:#FFFFFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">392</p>
</td><td style="background-color:#FFFFFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">440</p>
</td><td style="background-color:#FFFFFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#FFFFFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">423</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Canada</p>
</td><td style="background-color:#CCEEFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">653</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">672</p>
</td><td style="background-color:#CCEEFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">686</p>
</td></tr>
<tr><td style="background-color:#FFFFFF;width:560.1pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#FFFFFF;width:50.95pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:65.2pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#FFFFFF;width:24.45pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#FFFFFF;width:101.8pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Schedule Of Long-Lived Assets By Geographic Area, during the indicated time 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;">fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>75
<FILENAME>R61.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422618664">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock', window );">Schedule Of Global Revenues By Product Category</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">Global revenues by product category:</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:508.15pt" valign="top"> </td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Obstetrics</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,675</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,523</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,000</p>
</td></tr>
<tr><td style="width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gynecology/ Electrosurgery/ Urology</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">21,973</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">20,552</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">25,354</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Neonatal</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,691</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,870</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">6,066</p>
</td></tr>
<tr><td style="width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Blood Pressure Monitoring and Accessories</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">15,715</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,233</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,484</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total:</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">49,054</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">42,178</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">46,904</p>
</td></tr>
</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Schedule Of Global Revenues By Product Category, during the indicated time 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;">fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>76
<FILENAME>R62.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418130168">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_fil_ScheduleofousrevenuesbyproductcategoryTextBlock', window );">Schedule Of OUS Revenues By Product Category</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">Included in the Global revenues (above) were OUS revenues by product category:</p>
<table style="border-collapse:collapse;width:100%"><tr><td style="width:508.15pt" valign="top"> </td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Obstetrics</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">735</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">846</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">947</p>
</td></tr>
<tr><td style="width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Gynecology/ Electrosurgery/ Urology</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">11,053</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9,934</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">13,731</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Neonatal</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,347</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,490</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:101.65pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">1,412</p>
</td></tr>
<tr><td style="width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Blood Pressure Monitoring and Accessories</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">5,260</p>
</td><td style="width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">4,042</p>
</td><td style="width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,321</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:508.15pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total:</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">18,395</p>
</td><td style="background-color:#CCEEFF;width:65.05pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">16,312</p>
</td><td style="background-color:#CCEEFF;width:79.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:24.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$</p>
</td><td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">19,411</p>
</td></tr>
</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_ScheduleofousrevenuesbyproductcategoryTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 textual narrative disclosure of Schedule Of OUS Revenues By Product Category, during the indicated time 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;">fil_ScheduleofousrevenuesbyproductcategoryTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>77
<FILENAME>R63.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422771400">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Leases: Reconciliation of operating lease liabilities (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock', window );">Reconciliation of operating lease liabilities</a></td>
<td class="text"><br/><table style="border-collapse:collapse;width:100%"><tr style="height:23.85pt"><td style="width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">As of December 31, 2021</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Operating lease right-of-use assets</p>
</td><td style="background-color:#CCEEFF;width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$449</p>
</td></tr>
<tr><td style="width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><span style="-sec-ix-hidden:fact7">Operating lease liabilities &#8211;&#160;current (included in Accrued Expenses)</span></p>
</td><td style="width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">52</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Operating lease liabilities &#8211;&#160;long term</p>
</td><td style="background-color:#CCEEFF;width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right"><span style="border-bottom:1px solid #000000">396</span></p>
</td></tr>
<tr><td style="width:831.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Total operating lease liabilities</p>
</td><td style="width:264.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$449</p>
</td></tr>
</table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Reconciliation of operating lease liabilities/ payments to operating lease liabilities.</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;">fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>78
<FILENAME>R64.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422787096">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock', window );">Lessee, Operating Lease, Liability, Maturity</a></td>
<td class="text"><table style="border-collapse:collapse;width:100%"><tr style="height:23.75pt"><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Maturities of operating lease liabilities at December 31, 2021 were as follows (<i>in thousands</i>):</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">As of December 31, 2021</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2022</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$66</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2023</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">66</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2024</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">57</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2025</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">49</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">2026</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">49</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Thereafter</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">227</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> &#160;&#160;&#160;&#160;Total lease payments</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$514</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> &#160;&#160;&#160;&#160;Less: imputed interest</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">(65)</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0"> &#160;&#160;&#160;&#160;Total lease liabilities</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">$449</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr style="height:23.75pt"><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">The following table provides information on the lease terms and discount rates:</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">As of December 31, 2021</p>
</td></tr>
<tr><td style="background-color:#CCEEFF;width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Weighted average remaining lease term &#160;(in years)</p>
</td><td style="background-color:#CCEEFF;width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">9.1 years</p>
</td></tr>
<tr><td style="width:796.35pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Weighted average discount rate</p>
</td><td style="width:299.4pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">3.6%</p>
</td></tr>
</table>
<p style="font:12pt Times New Roman;margin:0">&#160;</p>
<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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.</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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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_LesseeOperatingLeaseLiabilityMaturityTableTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>79
<FILENAME>R65.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422773432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Tables)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_TableTextBlockSupplementAbstract', window );"><strong>Tables/Schedules</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_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Earnings Per Share, Basic and Diluted</a></td>
<td class="text"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
<p style="font:10pt Times New Roman;margin:0">The following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share:</p>
<table style="border-collapse:collapse;width:100%"><tr style="height:12.5pt"><td colspan="6" style="width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td></tr>
<tr style="height:12.5pt"><td colspan="6" style="width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td></tr>
<tr style="height:12.5pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"/><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2021</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2020</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:12pt Times New Roman;margin:0;text-align:center">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:center">2019</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>Numerator </b><i>(in thousands)</i></p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td></tr>
<tr style="height:11.2pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Net income</p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,788</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">10,798</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">14,727</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td></tr>
<tr style="height:12pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0"><b>Denominator</b></p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Weighted average shares, basic</p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,647</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,658</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,721</p>
</td></tr>
<tr style="height:12.5pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Dilutive effect of stock options</p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">13</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">14</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">18</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Diluted shares</p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,660</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,672</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3,739</p>
</td></tr>
<tr style="height:12.5pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">&#160;</p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td></tr>
<tr style="height:12.5pt"><td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings per share, basic</p>
</td><td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">4.05</p>
</td><td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">2.95</p>
</td><td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3.96</p>
</td></tr>
<tr style="height:12.5pt"><td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0">Earnings per share, diluted</p>
</td><td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">4.04</p>
</td><td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">2.94</p>
</td><td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"><p style="font:10pt Times New Roman;margin:0;text-align:right">&#160;</p>
</td><td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"><p style="font:10pt Times New Roman;margin:0;text-align:right">3.94</p>
</td></tr>
</table>
<p style="font:12pt Times New Roman;margin:0">&#160;</p>
<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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income 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/2009/role/commonPracticeRef<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=124432515&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_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock</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>dtr-types: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_TableTextBlockSupplementAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TableTextBlockSupplementAbstract</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>80
<FILENAME>R66.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386415577720">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th"><div>Dec. 31, 2021</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Building and Building Improvements | Minimum</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_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">15 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember', window );">Building and Building Improvements | Maximum</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_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">40 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment | Minimum</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_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">3 years<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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember', window );">Equipment | Maximum</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_us-gaap_PropertyPlantAndEquipmentUsefulLife', window );">Property, Plant and Equipment, Useful Life</a></td>
<td class="text">10 years<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_PropertyPlantAndEquipmentUsefulLife">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.</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_PropertyPlantAndEquipmentUsefulLife</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_BuildingAndBuildingImprovementsMember</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_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MinimumMember</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_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MaximumMember</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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_PropertyPlantAndEquipmentByTypeAxis=us-gaap_EquipmentMember</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>81
<FILENAME>R67.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416540520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Mar. 31, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</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_fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD', window );">Foreign Currency Exchange Rate Translation GBP to USD</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.3536<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_fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD', window );">Foreign Currency Exchange Rate Translation AUD to USD</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">0.7268<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_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">Finite-Lived Intangible Asset, Expected Amortization, Year One</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 6,542<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_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">Finite-Lived Intangible Asset, Expected Amortization, Year Two</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">5,805<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_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree', window );">Finite-Lived Intangible Asset, Expected Amortization, Year Three</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,121<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_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour', window );">Finite-Lived Intangible Asset, Expected Amortization, Year Four</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">2,121<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_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive', window );">Finite-Lived Intangible Asset, Expected Amortization, Year Five</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">463<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_fil_DistributionRightsAcquisitionAxis=fil_CoopersurgicalIncMember', window );">CooperSurgical Inc</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths', window );">Finite-Lived Intangible Asset, Expected Amortization, Year One</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4,421<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_us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo', window );">Finite-Lived Intangible Asset, Expected Amortization, Year Two</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3,684<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_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Finite-lived Intangible Assets Acquired</a></td>
<td class="nump">$ 21,000<span></span>
</td>
<td class="nump">$ 21,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_srt_RangeAxis=srt_MinimumMember', window );">Minimum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Finite-Lived Intangible Asset, Useful Life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">5 years<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_srt_RangeAxis=srt_MaximumMember', window );">Maximum</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_FiniteLivedIntangibleAssetUsefulLife', window );">Finite-Lived Intangible Asset, Useful Life</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">20 years<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 pure numeric value of Foreign Currency Exchange Rate Translation AUD to USD, as of the indicated 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;">fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</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_fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 pure numeric value of Foreign Currency Exchange Rate Translation GBP to USD, as of the indicated 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;">fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:pureItemType</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_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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<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_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths</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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive</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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour</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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree</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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<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_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo</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_FinitelivedIntangibleAssetsAcquired1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<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_FinitelivedIntangibleAssetsAcquired1</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_fil_DistributionRightsAcquisitionAxis=fil_CoopersurgicalIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">fil_DistributionRightsAcquisitionAxis=fil_CoopersurgicalIncMember</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_srt_RangeAxis=srt_MinimumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MinimumMember</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_srt_RangeAxis=srt_MaximumMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_RangeAxis=srt_MaximumMember</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>82
<FILENAME>R68.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386423553848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" 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 Payment Arrangement, Expense</a></td>
<td class="nump">$ 166<span></span>
</td>
<td class="nump">$ 160<span></span>
</td>
<td class="nump">$ 113<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>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=122041274&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>83
<FILENAME>R69.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418152888">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Income Taxes (Details)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2020 </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_TextBlockAbstract', window );"><strong>Details</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_us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense', window );">Unrecognized Tax Benefits, Income Tax Penalties and Interest Expense</a></td>
<td class="nump">$ 4<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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 expense for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 15<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32718-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_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense</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>84
<FILENAME>R70.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422631416">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Legal Costs (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_LitigationReserve', window );">Estimated Litigation Liability</a></td>
<td class="nump">$ 96<span></span>
</td>
<td class="nump">$ 113<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_LitigationReserve">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 amount of the estimated litigation liability for known or estimated probable loss from litigation, which may include attorneys' fees and other litigation costs.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=121557415&amp;loc=d3e14326-108349<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_LitigationReserve</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>85
<FILENAME>R71.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386415715032">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Details) - shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" 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 Number of Shares Outstanding, Basic</a></td>
<td class="nump">3,647<span></span>
</td>
<td class="nump">3,658<span></span>
</td>
<td class="nump">3,721<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_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Weighted Average Number Diluted Shares Outstanding Adjustment</a></td>
<td class="nump">13<span></span>
</td>
<td class="nump">14<span></span>
</td>
<td class="nump">18<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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 Number of Shares Outstanding, Diluted</a></td>
<td class="nump">3,660<span></span>
</td>
<td class="nump">3,672<span></span>
</td>
<td class="nump">3,739<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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</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/2009/role/commonPracticeRef<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=124432515&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_WeightedAverageNumberDilutedSharesOutstandingAdjustment</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/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&amp;loc=d3e1505-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_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/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&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>86
<FILENAME>R72.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386412258072">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_AccountsReceivableGrossCurrent', window );">Accounts Receivable, before Allowance for Credit Loss, Current</a></td>
<td class="nump">$ 5,287<span></span>
</td>
<td class="nump">$ 4,224<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_us-gaap_InterestReceivableAndOtherAssets', window );">Interest Receivable and Other Assets</a></td>
<td class="nump">39<span></span>
</td>
<td class="nump">14<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_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts Receivable, Allowance for Credit Loss, Current</a></td>
<td class="num">(156)<span></span>
</td>
<td class="num">(134)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_AccountsAndOtherReceivablesNetCurrent', window );">Accounts and Other Receivables, Net, Current</a></td>
<td class="nump">$ 5,170<span></span>
</td>
<td class="nump">$ 4,104<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_AccountsAndOtherReceivablesNetCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 allowance, receivable from customers, clients, or other third-parties, and receivables classified as other due within 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>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_AccountsAndOtherReceivablesNetCurrent</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_AccountsReceivableGrossCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4428-111522<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124259787&amp;loc=d3e4531-111522<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_AccountsReceivableGrossCurrent</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_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>Amount of allowance for credit loss on accounts receivable, classified as current.</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/disclosureRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=123577603&amp;loc=d3e5074-111524<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<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_InterestReceivableAndOtherAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 interest receivable and assets classified as 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;">us-gaap_InterestReceivableAndOtherAssets</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>87
<FILENAME>R73.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386415443912">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Inventory, Finished Goods, Net of Reserves</a></td>
<td class="nump">$ 1,468<span></span>
</td>
<td class="nump">$ 1,363<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_us-gaap_InventoryWorkInProcess', window );">Inventory, Work in Process, Gross</a></td>
<td class="nump">1,398<span></span>
</td>
<td class="nump">1,375<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_us-gaap_InventoryRawMaterials', window );">Inventory, Raw Materials, Gross</a></td>
<td class="nump">3,730<span></span>
</td>
<td class="nump">3,484<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Inventories (note 2)</a></td>
<td class="nump">$ 6,596<span></span>
</td>
<td class="nump">$ 6,222<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://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_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_InventoryRawMaterials">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 valuation and LIFO reserves of raw materials 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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_InventoryRawMaterials</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_InventoryWorkInProcess">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 valuation and LIFO reserves of merchandise or goods in the production process expected to be completed 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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_InventoryWorkInProcess</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>88
<FILENAME>R74.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386417674360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="2">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_Goodwill', window );">Balance as of January 1</a></td>
<td class="nump">$ 14,164<span></span>
</td>
<td class="nump">$ 13,961<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_us-gaap_GoodwillForeignCurrencyTranslationGainLoss', window );">Effect of foreign exchange</a></td>
<td class="num">(66)<span></span>
</td>
<td class="nump">203<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_us-gaap_GoodwillImpairmentLoss', window );">Subtractions as a result of impairment</a></td>
<td class="nump">0<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_us-gaap_Goodwill', window );">Total Goodwill as of December 31</a></td>
<td class="nump">$ 14,098<span></span>
</td>
<td class="nump">$ 14,164<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_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/disclosureRef<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)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120320667&amp;loc=SL49117168-202975<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=99380562&amp;loc=d3e13770-109266<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_GoodwillForeignCurrencyTranslationGainLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<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_GoodwillForeignCurrencyTranslationGainLoss</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_GoodwillImpairmentLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 loss from the write-down of an asset representing the 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://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13854-109267<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=123570139&amp;loc=d3e3602-108585<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=121556970&amp;loc=d3e13816-109267<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=99380562&amp;loc=d3e13777-109266<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_GoodwillImpairmentLoss</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>89
<FILENAME>R75.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416497224">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_FiniteLivedPatentsGross', window );">Finite-Lived Patents, Gross</a></td>
<td class="nump">$ 2,212<span></span>
</td>
<td class="nump">$ 2,201<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_us-gaap_FiniteLivedNoncompeteAgreementsGross', window );">Finite-Lived Noncompete Agreements, Gross</a></td>
<td class="nump">135<span></span>
</td>
<td class="nump">137<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_us-gaap_FiniteLivedTrademarksGross', window );">Finite-Lived Trademarks, Gross</a></td>
<td class="nump">9,930<span></span>
</td>
<td class="nump">10,021<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_us-gaap_FiniteLivedCustomerRelationshipsGross', window );">Finite-Lived Customer Relationships, Gross</a></td>
<td class="nump">9,678<span></span>
</td>
<td class="nump">9,769<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_us-gaap_OtherFiniteLivedIntangibleAssetsGross', window );">Other Finite-Lived Intangible Assets, Gross</a></td>
<td class="nump">21,000<span></span>
</td>
<td class="nump">21,000<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_fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross', window );">Regulatory approvals &amp; product certifications</a></td>
<td class="nump">12,910<span></span>
</td>
<td class="nump">13,031<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsGross', window );">Other intangible assets (note 2)</a></td>
<td class="nump">55,865<span></span>
</td>
<td class="nump">56,159<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_us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization', window );">Other intangible assets - accumulated amortization</a></td>
<td class="num">(38,552)<span></span>
</td>
<td class="num">(32,166)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_FiniteLivedIntangibleAssetsNet', window );">Finite-Lived Intangible Assets, Net</a></td>
<td class="nump">$ 17,313<span></span>
</td>
<td class="nump">$ 23,993<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Regulatory approvals &amp; product certifications, as of the indicated 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;">fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_FiniteLivedCustomerRelationshipsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 carrying amount before accumulated amortization as of the balance sheet date to an asset acquired in a business combination representing a favorable existing relationship with customers having a finite beneficial life.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_FiniteLivedCustomerRelationshipsGross</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_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/disclosureRef<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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 928<br> -SubTopic 340<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=6473545&amp;loc=d3e61844-108004<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_FiniteLivedIntangibleAssetsNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 926<br> -SubTopic 20<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=120154696&amp;loc=d3e54445-107959<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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_FiniteLivedIntangibleAssetsNet</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_FiniteLivedNoncompeteAgreementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 carrying amount before accumulated amortization as of the balance sheet date of payments made to third parties in exchange for their agreement not to engage in specified competitive practices in specified geographic territories for a specified period of time.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_FiniteLivedNoncompeteAgreementsGross</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_FiniteLivedPatentsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 carrying amount before accumulated amortization as of the balance sheet date of the costs pertaining to the exclusive legal rights granted to the owner of the patent to exploit an invention or a process for a period of time specified by law. Such costs may have been expended to directly apply and receive patent rights, or to acquire such rights.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_FiniteLivedPatentsGross</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_FiniteLivedTrademarksGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 carrying amount before accumulated amortization as of the balance sheet date for the rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style for a specified period of time.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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_FiniteLivedTrademarksGross</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_OtherFiniteLivedIntangibleAssetsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 amortization of finite-lived intangible 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://fasb.org/us-gaap/role/ref/legacyRef<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_OtherFiniteLivedIntangibleAssetsGross</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>90
<FILENAME>R76.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386423650744">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_AccruedIncomeTaxesCurrent', window );">Accrued Income Taxes, Current</a></td>
<td class="nump">$ 36<span></span>
</td>
<td class="nump">$ 3<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_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Employee-related Liabilities, Current</a></td>
<td class="nump">1,225<span></span>
</td>
<td class="nump">946<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_us-gaap_LitigationReserveCurrent', window );">Estimated Litigation Liability, Current</a></td>
<td class="nump">96<span></span>
</td>
<td class="nump">113<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_us-gaap_OtherAccruedLiabilitiesCurrent', window );">Other</a></td>
<td class="nump">1,627<span></span>
</td>
<td class="nump">1,941<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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 (note 2)</a></td>
<td class="nump">$ 2,984<span></span>
</td>
<td class="nump">$ 3,003<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_AccruedIncomeTaxesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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)(15)(b)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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(15)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_AccruedIncomeTaxesCurrent</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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_EmployeeRelatedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. 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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_EmployeeRelatedLiabilitiesCurrent</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_LitigationReserveCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 of reserve for known or estimated probable loss from litigation, which may include attorneys' fees and other litigation costs, which is expected to be paid within one year of the date of the statement of financial position.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -SubTopic 20<br> -Section 55<br> -Paragraph 11<br> -URI http://asc.fasb.org/extlink&amp;oid=116646759&amp;loc=d3e15243-108350<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=121557415&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_LitigationReserveCurrent</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_OtherAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 incurred but not yet paid classified as other, due within 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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6911-107765<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e7018-107765<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6935-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_OtherAccruedLiabilitiesCurrent</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>91
<FILENAME>R77.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416279848">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Details) - USD ($)<br> $ / shares in Units, $ in Thousands</strong></div></th>
<th class="th" colspan="12">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Net Sales</a></td>
<td class="nump">$ 12,914<span></span>
</td>
<td class="nump">$ 12,572<span></span>
</td>
<td class="nump">$ 12,604<span></span>
</td>
<td class="nump">$ 10,964<span></span>
</td>
<td class="nump">$ 12,010<span></span>
</td>
<td class="nump">$ 10,479<span></span>
</td>
<td class="nump">$ 8,787<span></span>
</td>
<td class="nump">$ 10,902<span></span>
</td>
<td class="nump">$ 11,831<span></span>
</td>
<td class="nump">$ 12,494<span></span>
</td>
<td class="nump">$ 11,846<span></span>
</td>
<td class="nump">$ 10,732<span></span>
</td>
<td class="nump">$ 49,054<span></span>
</td>
<td class="nump">$ 42,178<span></span>
</td>
<td class="nump">$ 46,904<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_us-gaap_GrossProfit', window );">Gross Profit</a></td>
<td class="nump">8,112<span></span>
</td>
<td class="nump">8,073<span></span>
</td>
<td class="nump">7,785<span></span>
</td>
<td class="nump">6,947<span></span>
</td>
<td class="nump">7,265<span></span>
</td>
<td class="nump">6,497<span></span>
</td>
<td class="nump">4,950<span></span>
</td>
<td class="nump">6,836<span></span>
</td>
<td class="nump">7,814<span></span>
</td>
<td class="nump">7,379<span></span>
</td>
<td class="nump">7,500<span></span>
</td>
<td class="nump">6,773<span></span>
</td>
<td class="nump">30,917<span></span>
</td>
<td class="nump">25,548<span></span>
</td>
<td class="nump">29,466<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_us-gaap_ProfitLoss', window );">Net Income</a></td>
<td class="nump">$ 4,131<span></span>
</td>
<td class="nump">$ 4,206<span></span>
</td>
<td class="nump">$ 3,426<span></span>
</td>
<td class="nump">$ 3,024<span></span>
</td>
<td class="nump">$ 3,412<span></span>
</td>
<td class="nump">$ 2,933<span></span>
</td>
<td class="nump">$ 1,313<span></span>
</td>
<td class="nump">$ 3,140<span></span>
</td>
<td class="nump">$ 4,359<span></span>
</td>
<td class="nump">$ 3,705<span></span>
</td>
<td class="nump">$ 3,525<span></span>
</td>
<td class="nump">$ 3,139<span></span>
</td>
<td class="nump">$ 14,788<span></span>
</td>
<td class="nump">$ 10,798<span></span>
</td>
<td class="nump">$ 14,727<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_us-gaap_EarningsPerShareDiluted', window );">Earnings Per Share Diluted</a></td>
<td class="nump">$ 1.13<span></span>
</td>
<td class="nump">$ 1.15<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 0.83<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 0.80<span></span>
</td>
<td class="nump">$ 0.36<span></span>
</td>
<td class="nump">$ 0.84<span></span>
</td>
<td class="nump">$ 1.17<span></span>
</td>
<td class="nump">$ 0.99<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 0.84<span></span>
</td>
<td class="nump">$ 4.04<span></span>
</td>
<td class="nump">$ 2.94<span></span>
</td>
<td class="nump">$ 3.94<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_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/exampleRef<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=125512782&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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>dtr-types: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_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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 18: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=123367319&amp;loc=SL114868664-224227<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<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_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the 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/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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_ProfitLoss</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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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_RevenueFromContractWithCustomerExcludingAssessedTax</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>92
<FILENAME>R78.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386411182280">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 4 - Property and Equipment: Property, Plant and Equipment (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_Land', window );">Land</a></td>
<td class="nump">$ 1,690<span></span>
</td>
<td class="nump">$ 1,725<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_us-gaap_BuildingsAndImprovementsGross', window );">Buildings and Improvements, Gross</a></td>
<td class="nump">14,172<span></span>
</td>
<td class="nump">14,531<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_us-gaap_MachineryAndEquipmentGross', window );">Machinery and Equipment, Gross</a></td>
<td class="nump">16,660<span></span>
</td>
<td class="nump">16,750<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_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right-of-Use Asset</a></td>
<td class="nump">$ 449<span></span>
</td>
<td class="nump">$ 377<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_us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Right-of-Use Asset, Statement of Financial Position</a></td>
<td class="text">Property and equipment, net (notes 4 and 10)<span></span>
</td>
<td class="text">Property and equipment, net (notes 4 and 10)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net (notes 4 and 10)</a></td>
<td class="nump">$ 11,067<span></span>
</td>
<td class="nump">$ 11,326<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_us-gaap_ConstructionInProgressGross', window );">Construction in Progress, Gross</a></td>
<td class="nump">898<span></span>
</td>
<td class="nump">527<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" 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, Gross</a></td>
<td class="nump">33,869<span></span>
</td>
<td class="nump">33,910<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_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</a></td>
<td class="num">$ (22,802)<span></span>
</td>
<td class="num">$ (22,584)<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_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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_BuildingsAndImprovementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></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_BuildingsAndImprovementsGross</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_ConstructionInProgressGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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></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_ConstructionInProgressGross</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_Land">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 depletion of real estate held for productive use, excluding land held for sale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-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_Land</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_MachineryAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></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_MachineryAndEquipmentGross</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_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's right to use underlying asset under operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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_OperatingLeaseRightOfUseAsset</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_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Indicates line item in statement of financial position that includes operating lease right-of-use asset.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918631-209977<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_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList</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>enum2:enumerationSetItemType</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_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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>93
<FILENAME>R79.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416358088">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 4 - Property and Equipment: Property Plant and Equipment by Location (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_us-gaap_Land', window );">Land</a></td>
<td class="nump">$ 1,690<span></span>
</td>
<td class="nump">$ 1,725<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_us-gaap_BuildingsAndImprovementsGross', window );">Buildings and Improvements, Gross</a></td>
<td class="nump">14,172<span></span>
</td>
<td class="nump">14,531<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_us-gaap_MachineryAndEquipmentGross', window );">Machinery and Equipment, Gross</a></td>
<td class="nump">16,660<span></span>
</td>
<td class="nump">16,750<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_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right-of-Use Asset</a></td>
<td class="nump">449<span></span>
</td>
<td class="nump">377<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_us-gaap_ConstructionInProgressGross', window );">Construction in Progress, Gross</a></td>
<td class="nump">898<span></span>
</td>
<td class="nump">527<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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, Gross</a></td>
<td class="nump">33,869<span></span>
</td>
<td class="nump">33,910<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_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</a></td>
<td class="num">(22,802)<span></span>
</td>
<td class="num">(22,584)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net (notes 4 and 10)</a></td>
<td class="nump">11,067<span></span>
</td>
<td class="nump">11,326<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_srt_StatementGeographicalAxis=fil_U.S.AndCanadaMember', window );">U.S. and Canada</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_Land', window );">Land</a></td>
<td class="nump">621<span></span>
</td>
<td class="nump">621<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_us-gaap_BuildingsAndImprovementsGross', window );">Buildings and Improvements, Gross</a></td>
<td class="nump">6,541<span></span>
</td>
<td class="nump">6,523<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_us-gaap_MachineryAndEquipmentGross', window );">Machinery and Equipment, Gross</a></td>
<td class="nump">14,608<span></span>
</td>
<td class="nump">14,632<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_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right-of-Use Asset</a></td>
<td class="nump">411<span></span>
</td>
<td class="nump">361<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_us-gaap_ConstructionInProgressGross', window );">Construction in Progress, Gross</a></td>
<td class="nump">412<span></span>
</td>
<td class="nump">36<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" 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, Gross</a></td>
<td class="nump">22,593<span></span>
</td>
<td class="nump">22,173<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_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</a></td>
<td class="num">(18,168)<span></span>
</td>
<td class="num">(17,934)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net (notes 4 and 10)</a></td>
<td class="nump">4,425<span></span>
</td>
<td class="nump">4,239<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_srt_StatementGeographicalAxis=fil_EnglandAndAustraliaMember', window );">England and Australia</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_Land', window );">Land</a></td>
<td class="nump">678<span></span>
</td>
<td class="nump">684<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_us-gaap_BuildingsAndImprovementsGross', window );">Buildings and Improvements, Gross</a></td>
<td class="nump">3,384<span></span>
</td>
<td class="nump">3,443<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_us-gaap_MachineryAndEquipmentGross', window );">Machinery and Equipment, Gross</a></td>
<td class="nump">752<span></span>
</td>
<td class="nump">761<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_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right-of-Use Asset</a></td>
<td class="nump">0<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_us-gaap_ConstructionInProgressGross', window );">Construction in Progress, Gross</a></td>
<td class="nump">2<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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, Gross</a></td>
<td class="nump">4,816<span></span>
</td>
<td class="nump">4,888<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_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</a></td>
<td class="num">(1,164)<span></span>
</td>
<td class="num">(974)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net (notes 4 and 10)</a></td>
<td class="nump">3,652<span></span>
</td>
<td class="nump">3,914<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_srt_StatementGeographicalAxis=country_IE', window );">IRELAND</a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_Land', window );">Land</a></td>
<td class="nump">391<span></span>
</td>
<td class="nump">420<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_us-gaap_BuildingsAndImprovementsGross', window );">Buildings and Improvements, Gross</a></td>
<td class="nump">4,247<span></span>
</td>
<td class="nump">4,565<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_us-gaap_MachineryAndEquipmentGross', window );">Machinery and Equipment, Gross</a></td>
<td class="nump">1,300<span></span>
</td>
<td class="nump">1,357<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_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right-of-Use Asset</a></td>
<td class="nump">38<span></span>
</td>
<td class="nump">16<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_us-gaap_ConstructionInProgressGross', window );">Construction in Progress, Gross</a></td>
<td class="nump">484<span></span>
</td>
<td class="nump">491<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" 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, Gross</a></td>
<td class="nump">6,460<span></span>
</td>
<td class="nump">6,849<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_us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment', window );">Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment</a></td>
<td class="num">(3,470)<span></span>
</td>
<td class="num">(3,676)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net (notes 4 and 10)</a></td>
<td class="nump">$ 2,990<span></span>
</td>
<td class="nump">$ 3,173<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_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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_BuildingsAndImprovementsGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></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_BuildingsAndImprovementsGross</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_ConstructionInProgressGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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></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_ConstructionInProgressGross</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_Land">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 depletion of real estate held for productive use, excluding land held for sale.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (e)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-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_Land</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_MachineryAndEquipmentGross">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6812-107765<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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></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_MachineryAndEquipmentGross</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_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's right to use underlying asset under operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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_OperatingLeaseRightOfUseAsset</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://fasb.org/us-gaap/role/ref/legacyRef<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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI http://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<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_srt_StatementGeographicalAxis=fil_U.S.AndCanadaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=fil_U.S.AndCanadaMember</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_srt_StatementGeographicalAxis=fil_EnglandAndAustraliaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=fil_EnglandAndAustraliaMember</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_srt_StatementGeographicalAxis=country_IE">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=country_IE</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>94
<FILENAME>R80.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386423517608">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 5 - Long-term Debt (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_LongTermDebt', window );">Long-term Debt</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<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_LongTermDebt">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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. 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6031897-161870<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69C<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495737-112612<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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)(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400017&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 55<br> -Paragraph 69B<br> -URI http://asc.fasb.org/extlink&amp;oid=123466577&amp;loc=SL123495735-112612<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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(16))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1D<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495340-112611<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<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(22))<br> -URI http://asc.fasb.org/extlink&amp;oid=120391452&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_LongTermDebt</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>95
<FILENAME>R81.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422745240">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 6 - Commitments and Contingencies (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_ProductWarrantyAccrual', window );">Standard and Extended Product Warranty Accrual</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">$ 0<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_ProductWarrantyAccrual">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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.15(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=120398452&amp;loc=d3e534808-122878<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=123368208&amp;loc=d3e12565-110249<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (c)(5)<br> -URI http://asc.fasb.org/extlink&amp;oid=123368208&amp;loc=d3e12565-110249<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_ProductWarrantyAccrual</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>96
<FILENAME>R82.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386415764136">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxAssetsInventory', window );">Deferred Tax Assets, Inventory</a></td>
<td class="nump">$ 88<span></span>
</td>
<td class="nump">$ 86<span></span>
</td>
<td class="nump">$ 84<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_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts', window );">Deferred Tax Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss</a></td>
<td class="nump">31<span></span>
</td>
<td class="nump">32<span></span>
</td>
<td class="nump">33<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_us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities', window );">Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities</a></td>
<td class="nump">58<span></span>
</td>
<td class="nump">68<span></span>
</td>
<td class="nump">55<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_fil_DeferredTaxLiabilitiesDepreciationAndAmortization', window );">Deferred Tax Liabilities Depreciation and Amortization</a></td>
<td class="num">(2,925)<span></span>
</td>
<td class="num">(3,034)<span></span>
</td>
<td class="num">(2,933)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DeferredTaxLiabilities', window );">Deferred Tax Liabilities, Net</a></td>
<td class="num">$ (2,748)<span></span>
</td>
<td class="num">$ (2,848)<span></span>
</td>
<td class="num">$ (2,761)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_DeferredTaxLiabilitiesDepreciationAndAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Deferred Tax Liabilities Depreciation and Amortization, as of the indicated 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;">fil_DeferredTaxLiabilitiesDepreciationAndAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_DeferredTaxAssetsInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-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_DeferredTaxAssetsInventory</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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities</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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32632-109319<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32621-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_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts</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_DeferredTaxLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 without jurisdictional netting.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=123427490&amp;loc=d3e31931-109318<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32537-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_DeferredTaxLiabilities</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>97
<FILENAME>R83.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386417882824">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_CurrentIncomeTaxExpenseBenefit', window );">Current Income Tax Expense (Benefit)</a></td>
<td class="nump">$ 3,983<span></span>
</td>
<td class="nump">$ 3,253<span></span>
</td>
<td class="nump">$ 3,467<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_fil_DeferredIncomeTaxExpense', window );">Deferred Income Tax Expense</a></td>
<td class="nump">290<span></span>
</td>
<td class="num">(211)<span></span>
</td>
<td class="num">(310)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes (note 7)</a></td>
<td class="nump">$ 4,273<span></span>
</td>
<td class="nump">$ 3,042<span></span>
</td>
<td class="nump">$ 3,157<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_DeferredIncomeTaxExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Deferred Income Tax Expense, during the indicated time 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;">fil_DeferredIncomeTaxExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_CurrentIncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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) pertaining to taxable 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://fasb.org/us-gaap/role/ref/legacyRef<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=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<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)(1)(Note 1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32639-109319<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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.Fact.2)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&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_CurrentIncomeTaxExpenseBenefit</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_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/disclosureRef<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=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>98
<FILENAME>R84.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416296360">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate', window );">Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount</a></td>
<td class="nump">$ 2,520<span></span>
</td>
<td class="nump">$ 1,915<span></span>
</td>
<td class="nump">$ 2,512<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_us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes', window );">Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount</a></td>
<td class="nump">448<span></span>
</td>
<td class="nump">369<span></span>
</td>
<td class="num">(124)<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_us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential', window );">Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount</a></td>
<td class="nump">1,010<span></span>
</td>
<td class="nump">550<span></span>
</td>
<td class="nump">985<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_us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities', window );">Effective Income Tax Rate Reconciliation, Deduction, Qualified Production Activity, Amount</a></td>
<td class="num">(6)<span></span>
</td>
<td class="num">(7)<span></span>
</td>
<td class="num">(9)<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_us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount', window );">Effective Income Tax Rate Reconciliation Tax Cuts And Jobs Act Of 2017 Transition Tax On Accumulated Foreign Earnings Amount</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">263<span></span>
</td>
<td class="num">(266)<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_fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense', window );">Tax Cuts and Jobs Act of 2017 Global Intangible Low Taxed Income Income Tax Expense</a></td>
<td class="num">(99)<span></span>
</td>
<td class="num">(35)<span></span>
</td>
<td class="nump">59<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_fil_AdjustmentToDeferredTaxLiability', window );">Adjustment To Deferred Tax Liability</a></td>
<td class="nump">391<span></span>
</td>
<td class="nump">0<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_us-gaap_IncomeTaxReconciliationOtherAdjustments', window );">Effective Income Tax Rate Reconciliation, Other Adjustments, Amount</a></td>
<td class="nump">9<span></span>
</td>
<td class="num">(13)<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeTaxExpenseBenefit', window );">Provision for income taxes (note 7)</a></td>
<td class="nump">$ 4,273<span></span>
</td>
<td class="nump">$ 3,042<span></span>
</td>
<td class="nump">$ 3,157<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_AdjustmentToDeferredTaxLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Adjustment To Deferred Tax Liability, during the indicated time 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;">fil_AdjustmentToDeferredTaxLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Tax Cuts and Jobs Act of 2017 Global Intangible Low Taxed Income Income Tax Expense, during the indicated time 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;">fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operations, attributable to increase (decrease) from transition tax on accumulated earnings of controlled foreign corporation deemed repatriated pursuant to Tax Cuts and Jobs Act.</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/2009/role/commonPracticeRef<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=121826272&amp;loc=d3e32687-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_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount</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_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/disclosureRef<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=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI http://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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_IncomeTaxReconciliationDeductionsQualifiedProductionActivities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 difference between reported income tax expense (benefit) and the expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to deduction for qualified production 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/2009/role/commonPracticeRef<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=121826272&amp;loc=d3e32687-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_IncomeTaxReconciliationDeductionsQualifiedProductionActivities</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_IncomeTaxReconciliationForeignIncomeTaxRateDifferential">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit).</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/2009/role/commonPracticeRef<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=121826272&amp;loc=d3e32687-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_IncomeTaxReconciliationForeignIncomeTaxRateDifferential</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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income 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/disclosureRef<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=121826272&amp;loc=d3e32687-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_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate</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_IncomeTaxReconciliationOtherAdjustments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.</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/2009/role/commonPracticeRef<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=121826272&amp;loc=d3e32687-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_IncomeTaxReconciliationOtherAdjustments</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_IncomeTaxReconciliationStateAndLocalIncomeTaxes">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).</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/2009/role/commonPracticeRef<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=121826272&amp;loc=d3e32687-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_IncomeTaxReconciliationStateAndLocalIncomeTaxes</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>99
<FILENAME>R85.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386423641064">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic', window );">Income (Loss) from Continuing Operations before Income Taxes, Domestic</a></td>
<td class="nump">$ 12,004<span></span>
</td>
<td class="nump">$ 9,031<span></span>
</td>
<td class="nump">$ 11,549<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_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign', window );">Income (Loss) from Continuing Operations before Income Taxes, Foreign</a></td>
<td class="nump">7,057<span></span>
</td>
<td class="nump">4,809<span></span>
</td>
<td class="nump">6,335<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl custom" 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 provision for income taxes</a></td>
<td class="nump">$ 19,061<span></span>
</td>
<td class="nump">$ 13,840<span></span>
</td>
<td class="nump">$ 17,884<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 earnings or loss from continuing operations before income taxes that is attributable to domestic 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/disclosureRef<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)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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.Fact.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=123384075&amp;loc=d3e41242-110953<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<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=123367319&amp;loc=SL114868664-224227<br><br>Reference 7: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(8))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 10: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(15))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.</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/disclosureRef<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)(1))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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.Fact.3)<br> -URI http://asc.fasb.org/extlink&amp;oid=122134291&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_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>100
<FILENAME>R86.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416869464">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Options (Details) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized', window );">Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized</a></td>
<td class="nump">461<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</a></td>
<td class="nump">52<span></span>
</td>
<td class="nump">69<span></span>
</td>
<td class="nump">52<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_us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions', window );">Share-based Payment Arrangement, Exercise of Option, Tax Benefit</a></td>
<td class="nump">$ 39<span></span>
</td>
<td class="nump">$ 7<span></span>
</td>
<td class="nump">$ 23<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_us-gaap_AllocatedShareBasedCompensationExpense', window );">Share-based Payment Arrangement, Expense</a></td>
<td class="nump">166<span></span>
</td>
<td class="nump">$ 160<span></span>
</td>
<td class="nump">113<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 16.17<span></span>
</td>
<td class="text">&#160;<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_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount</a></td>
<td class="nump">286<span></span>
</td>
<td class="text">&#160;<span></span>
</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_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths', window );">Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months</a></td>
<td class="nump">$ 172<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition', window );">Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months Period For Recognition</a></td>
<td class="text">12 months<span></span>
</td>
<td class="text">&#160;<span></span>
</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_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears', window );">Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years</a></td>
<td class="nump">$ 114<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition', window );">Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years Period For Recognition</a></td>
<td class="text">2 years<span></span>
</td>
<td class="text">&#160;<span></span>
</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value</a></td>
<td class="nump">$ 591<span></span>
</td>
<td class="nump">$ 371<span></span>
</td>
<td class="nump">354<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value</a></td>
<td class="nump">$ 1,595<span></span>
</td>
<td class="nump">$ 1,178<span></span>
</td>
<td class="nump">$ 2,553<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months, as of the indicated 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;">fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months Period For Recognition, during the indicated time 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;">fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years, as of the indicated 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;">fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years Period For Recognition, during the indicated time 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;">fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_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>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&amp;loc=d3e5047-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=122041274&amp;loc=d3e301413-122809<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_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>Amount of cost not yet recognized for nonvested award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 tax benefit from exercise of option under share-based payment 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/disclosureRef<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=120381028&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_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions</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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 authorized for issuance under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized</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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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>dtr-types: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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>101
<FILENAME>R87.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416551224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Details) - shares<br> shares in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">26<span></span>
</td>
<td class="nump">0<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_fil_PriceRangePerShareGranted', window );">Price Range Per Share Granted</a></td>
<td class="text">- - -<span></span>
</td>
<td class="text">77.05 - 77.05<span></span>
</td>
<td class="text">- - -<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period</a></td>
<td class="nump">3<span></span>
</td>
<td class="nump">1<span></span>
</td>
<td class="nump">2<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_fil_PriceRangePerShareExpired', window );">Price Range Per Share Expired</a></td>
<td class="text">74.64 - 77.05<span></span>
</td>
<td class="text">58.50 - 77.05<span></span>
</td>
<td class="text">58.50 - 74.64<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_fil_PriceRangePerShareExercised', window );">Price Range Per Share Exercised</a></td>
<td class="text">26.52 - 77.05<span></span>
</td>
<td class="text">26.52 - 74.64<span></span>
</td>
<td class="text">24.00 - 58.50<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number</a></td>
<td class="nump">52<span></span>
</td>
<td class="nump">69<span></span>
</td>
<td class="nump">52<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_fil_PriceRangePerShareOutstanding', window );">Price Range Per Share Outstanding</a></td>
<td class="text">33.30 - 77.05<span></span>
</td>
<td class="text">26.52 - 77.05<span></span>
</td>
<td class="text">26.52 - 74.64<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber', window );">Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number</a></td>
<td class="nump">34<span></span>
</td>
<td class="nump">33<span></span>
</td>
<td class="nump">33<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_fil_PriceRangePerShareTotalExercisable', window );">Price Range Per Share Total Exercisable</a></td>
<td class="text">33.30 - 77.05<span></span>
</td>
<td class="text">26.52 - 74.64<span></span>
</td>
<td class="text">26.52 - 74.64<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_StatementEquityComponentsAxis=us-gaap_CommonStockMember', window );">Common Stock</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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised', window );">Common stock issued upon exercise of employee stock options, shares</a></td>
<td class="nump">14<span></span>
</td>
<td class="nump">8<span></span>
</td>
<td class="nump">7<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_PriceRangePerShareExercised">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 description of Price Range Per Share Exercised, during the indicated time 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;">fil_PriceRangePerShareExercised</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_PriceRangePerShareExpired">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 description of Price Range Per Share Expired, during the indicated time 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;">fil_PriceRangePerShareExpired</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_PriceRangePerShareGranted">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 description of Price Range Per Share Granted, during the indicated time 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;">fil_PriceRangePerShareGranted</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_PriceRangePerShareOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 description of Price Range Per Share Outstanding, during the indicated time 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;">fil_PriceRangePerShareOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_PriceRangePerShareTotalExercisable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 description of Price Range Per Share Total Exercisable, during the indicated time 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;">fil_PriceRangePerShareTotalExercisable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Net 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>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod</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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<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=123467817&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_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StatementEquityComponentsAxis=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_StatementEquityComponentsAxis=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>102
<FILENAME>R88.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386419422504">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2020 </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_TextBlockAbstract', window );"><strong>Details</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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments', window );">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Payments</a></td>
<td class="nump">$ 0.2943<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate', window );">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate</a></td>
<td class="nump">27.50%<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_us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate', window );">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate</a></td>
<td class="nump">0.56%<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_us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1', window );">Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term</a></td>
<td class="text">5 years 3 months 18 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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 amount of dividends to be paid to holders of the underlying shares (expected dividends) over the option's term. Dividends are taken into account because payment of dividends to shareholders reduces the fair value of the underlying shares, and option holders generally do not receive dividends.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments</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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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>dtr-types: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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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>dtr-types: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_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 award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents 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://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&amp;loc=d3e5070-113901<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<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=122041274&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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>103
<FILENAME>R89.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386412665608">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Details)<br></strong></div></th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr><th class="th">
<div>Dec. 31, 2021 </div>
<div>$ / shares </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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Lower Range Limit</a></td>
<td class="nump">$ 33.30<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Upper Range Limit</a></td>
<td class="nump">$ 77.05<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Shares Outstanding | shares</a></td>
<td class="nump">51,858<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_fil_WeightedAverageRemainingContractualLifeYears', window );">Weighted Average Remaining Contractual Life (Years)</a></td>
<td class="nump">6.49<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_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Exercise Price</a></td>
<td class="nump">$ 69.24<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Shares Exercisable | shares</a></td>
<td class="nump">34,287<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_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price</a></td>
<td class="nump">$ 65.55<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_srt_StatementScenarioAxis=fil_Range1Member', window );">Range 1</a></td>
<td class="text">&#160;<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Lower Range Limit</a></td>
<td class="nump">33.30<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Upper Range Limit</a></td>
<td class="nump">$ 58.50<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Shares Outstanding | shares</a></td>
<td class="nump">15,024<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_fil_WeightedAverageRemainingContractualLifeYears', window );">Weighted Average Remaining Contractual Life (Years)</a></td>
<td class="nump">3.44<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_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Exercise Price</a></td>
<td class="nump">$ 52.37<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Shares Exercisable | shares</a></td>
<td class="nump">15,024<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_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price</a></td>
<td class="nump">$ 52.37<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_srt_StatementScenarioAxis=fil_Range2Member', window );">Range 2</a></td>
<td class="text">&#160;<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Lower Range Limit</a></td>
<td class="nump">74.64<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Upper Range Limit</a></td>
<td class="nump">$ 77.05<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Shares Outstanding | shares</a></td>
<td class="nump">36,834<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_fil_WeightedAverageRemainingContractualLifeYears', window );">Weighted Average Remaining Contractual Life (Years)</a></td>
<td class="nump">7.74<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_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Exercise Price</a></td>
<td class="nump">$ 76.12<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_us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Shares Exercisable | shares</a></td>
<td class="nump">19,263<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_us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1', window );">Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price</a></td>
<td class="nump">$ 75.82<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_WeightedAverageRemainingContractualLifeYears">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 Weighted Average Remaining Contractual Life (Years), as of the indicated 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;">fil_WeightedAverageRemainingContractualLifeYears</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:decimalItemType</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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit</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>dtr-types: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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (c)(iii)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions</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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions</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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 ceiling of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (g)<br> -URI http://asc.fasb.org/extlink&amp;oid=120381028&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_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit</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>dtr-types: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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1</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>dtr-types: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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<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=120381028&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_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1</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>dtr-types: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_srt_StatementScenarioAxis=fil_Range1Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementScenarioAxis=fil_Range1Member</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_srt_StatementScenarioAxis=fil_Range2Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementScenarioAxis=fil_Range2Member</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>104
<FILENAME>R90.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418524184">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Geographic Information: Schedule Of Geographic Information (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_fil_CompanySalesInTheUnitedStates', window );">Company Sales in the United States</a></td>
<td class="nump">$ 30,659<span></span>
</td>
<td class="nump">$ 25,866<span></span>
</td>
<td class="nump">$ 27,493<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_fil_CompanySalesInEurope', window );">Company Sales in Europe</a></td>
<td class="nump">7,434<span></span>
</td>
<td class="nump">6,399<span></span>
</td>
<td class="nump">8,906<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_fil_CompanySalesOther', window );">Company Sales Other</a></td>
<td class="nump">$ 10,961<span></span>
</td>
<td class="nump">$ 9,913<span></span>
</td>
<td class="nump">$ 10,505<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_CompanySalesInEurope">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Company Sales in Europe, during the indicated time 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;">fil_CompanySalesInEurope</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_CompanySalesInTheUnitedStates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Company Sales in the United States, during the indicated time 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;">fil_CompanySalesInTheUnitedStates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_CompanySalesOther">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Company Sales Other, during the indicated time 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;">fil_CompanySalesOther</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>105
<FILENAME>R91.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386412356616">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_fil_LongLivedAssetsInTheUnitedStates', window );">Long-lived assets in the United States</a></td>
<td class="nump">$ 19,104<span></span>
</td>
<td class="nump">$ 23,327<span></span>
</td>
<td class="nump">$ 27,605<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_fil_LongLivedAssetsInEngland', window );">Long-lived assets in England</a></td>
<td class="nump">19,339<span></span>
</td>
<td class="nump">21,871<span></span>
</td>
<td class="nump">23,548<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_fil_LongLivedAssetsInIreland', window );">Long-lived assets in Ireland</a></td>
<td class="nump">2,990<span></span>
</td>
<td class="nump">3,173<span></span>
</td>
<td class="nump">2,639<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_fil_LongLivedAssetsInAustralia', window );">Long-lived assets in Australia</a></td>
<td class="nump">392<span></span>
</td>
<td class="nump">440<span></span>
</td>
<td class="nump">423<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_fil_LongLivedAssetsInCanada', window );">Long-lived assets in Canada</a></td>
<td class="nump">$ 653<span></span>
</td>
<td class="nump">$ 672<span></span>
</td>
<td class="nump">$ 686<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_LongLivedAssetsInAustralia">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Long-lived assets in Australia, as of the indicated 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;">fil_LongLivedAssetsInAustralia</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_LongLivedAssetsInCanada">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Long-lived assets in Canada, as of the indicated 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;">fil_LongLivedAssetsInCanada</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_LongLivedAssetsInEngland">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Long-lived assets in England, as of the indicated 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;">fil_LongLivedAssetsInEngland</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_LongLivedAssetsInIreland">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Long-lived assets in Ireland, as of the indicated 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;">fil_LongLivedAssetsInIreland</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_LongLivedAssetsInTheUnitedStates">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Long-lived assets in the United States, as of the indicated 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;">fil_LongLivedAssetsInTheUnitedStates</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>106
<FILENAME>R92.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386412525576">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="12">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</a></td>
<td class="nump">$ 12,914<span></span>
</td>
<td class="nump">$ 12,572<span></span>
</td>
<td class="nump">$ 12,604<span></span>
</td>
<td class="nump">$ 10,964<span></span>
</td>
<td class="nump">$ 12,010<span></span>
</td>
<td class="nump">$ 10,479<span></span>
</td>
<td class="nump">$ 8,787<span></span>
</td>
<td class="nump">$ 10,902<span></span>
</td>
<td class="nump">$ 11,831<span></span>
</td>
<td class="nump">$ 12,494<span></span>
</td>
<td class="nump">$ 11,846<span></span>
</td>
<td class="nump">$ 10,732<span></span>
</td>
<td class="nump">$ 49,054<span></span>
</td>
<td class="nump">$ 42,178<span></span>
</td>
<td class="nump">$ 46,904<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_srt_StatementGeographicalAxis=fil_GlobalMember', window );">Global</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">49,054<span></span>
</td>
<td class="nump">42,178<span></span>
</td>
<td class="nump">46,904<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_srt_StatementGeographicalAxis=fil_GlobalMember', window );">Global | Obstetrics</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">4,675<span></span>
</td>
<td class="nump">4,523<span></span>
</td>
<td class="nump">5,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_srt_StatementGeographicalAxis=fil_GlobalMember', window );">Global | Gynecology/Electrosurgery/Urology</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">21,973<span></span>
</td>
<td class="nump">20,552<span></span>
</td>
<td class="nump">25,354<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_srt_StatementGeographicalAxis=fil_GlobalMember', window );">Global | Neonatal</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">6,691<span></span>
</td>
<td class="nump">5,870<span></span>
</td>
<td class="nump">6,066<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_srt_StatementGeographicalAxis=fil_GlobalMember', window );">Global | Blood Pressure Monitoring and Accessories</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">$ 15,715<span></span>
</td>
<td class="nump">$ 11,233<span></span>
</td>
<td class="nump">$ 10,484<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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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_RevenueFromContractWithCustomerExcludingAssessedTax</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_srt_StatementGeographicalAxis=fil_GlobalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=fil_GlobalMember</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_srt_ProductOrServiceAxis=fil_ObstetricsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_ProductOrServiceAxis=fil_ObstetricsMember</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_srt_ProductOrServiceAxis=fil_GynecologyElectrosurgeryUrologyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_ProductOrServiceAxis=fil_GynecologyElectrosurgeryUrologyMember</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_srt_ProductOrServiceAxis=fil_NeonatalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_ProductOrServiceAxis=fil_NeonatalMember</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_srt_ProductOrServiceAxis=fil_BloodPressureMonitoringandAccessoriesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_ProductOrServiceAxis=fil_BloodPressureMonitoringandAccessoriesMember</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>107
<FILENAME>R93.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416680408">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="12">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</a></td>
<td class="nump">$ 12,914<span></span>
</td>
<td class="nump">$ 12,572<span></span>
</td>
<td class="nump">$ 12,604<span></span>
</td>
<td class="nump">$ 10,964<span></span>
</td>
<td class="nump">$ 12,010<span></span>
</td>
<td class="nump">$ 10,479<span></span>
</td>
<td class="nump">$ 8,787<span></span>
</td>
<td class="nump">$ 10,902<span></span>
</td>
<td class="nump">$ 11,831<span></span>
</td>
<td class="nump">$ 12,494<span></span>
</td>
<td class="nump">$ 11,846<span></span>
</td>
<td class="nump">$ 10,732<span></span>
</td>
<td class="nump">$ 49,054<span></span>
</td>
<td class="nump">$ 42,178<span></span>
</td>
<td class="nump">$ 46,904<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_srt_StatementGeographicalAxis=fil_OusMember', window );">OUS</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">18,395<span></span>
</td>
<td class="nump">16,312<span></span>
</td>
<td class="nump">19,411<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_srt_StatementGeographicalAxis=fil_OusMember', window );">OUS | Obstetrics</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">735<span></span>
</td>
<td class="nump">846<span></span>
</td>
<td class="nump">947<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_srt_StatementGeographicalAxis=fil_OusMember', window );">OUS | Gynecology/Electrosurgery/Urology</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">11,053<span></span>
</td>
<td class="nump">9,934<span></span>
</td>
<td class="nump">13,731<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_srt_StatementGeographicalAxis=fil_OusMember', window );">OUS | Neonatal</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">1,347<span></span>
</td>
<td class="nump">1,490<span></span>
</td>
<td class="nump">1,412<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_srt_StatementGeographicalAxis=fil_OusMember', window );">OUS | Blood Pressure Monitoring and Accessories</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax', window );">Sales, net (notes 1, 3, 9 and 11)</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>
<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>
<td class="nump">$ 5,260<span></span>
</td>
<td class="nump">$ 4,042<span></span>
</td>
<td class="nump">$ 3,321<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_RevenueFromContractWithCustomerExcludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 40<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9031-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9038-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130543-203045<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e9054-108599<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI http://asc.fasb.org/extlink&amp;oid=123351226&amp;loc=SL49130545-203045<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 924<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB Topic 11.L)<br> -URI http://asc.fasb.org/extlink&amp;oid=6472922&amp;loc=d3e499488-122856<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_RevenueFromContractWithCustomerExcludingAssessedTax</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_srt_StatementGeographicalAxis=fil_OusMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_StatementGeographicalAxis=fil_OusMember</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_srt_ProductOrServiceAxis=fil_ObstetricsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_ProductOrServiceAxis=fil_ObstetricsMember</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_srt_ProductOrServiceAxis=fil_GynecologyElectrosurgeryUrologyMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_ProductOrServiceAxis=fil_GynecologyElectrosurgeryUrologyMember</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_srt_ProductOrServiceAxis=fil_NeonatalMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_ProductOrServiceAxis=fil_NeonatalMember</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_srt_ProductOrServiceAxis=fil_BloodPressureMonitoringandAccessoriesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">srt_ProductOrServiceAxis=fil_BloodPressureMonitoringandAccessoriesMember</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>108
<FILENAME>R94.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386423630904">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Product Sale and Purchase Commitments (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_RoyaltyIncomeNonoperating', window );">Royalty income (note 12)</a></td>
<td class="nump">$ 15<span></span>
</td>
<td class="nump">$ 20<span></span>
</td>
<td class="nump">$ 6<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_us-gaap_ContractualObligation', window );">Contractual Obligation</a></td>
<td class="nump">$ 4,891<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_ContractualObligation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 contractual obligation, including but not limited to, long-term debt, capital lease obligations, operating lease obligations, purchase obligations, and other commitments.</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_ContractualObligation</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_RoyaltyIncomeNonoperating">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Ancillary revenue earned during the period from the consideration paid to the entity for the use of its rights and property by another party. Examples include licensing the use of copyrighted materials and leasing the extraction of natural resources.</p></div>
<a href="javascript:void(0);" onclick="top.Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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_RoyaltyIncomeNonoperating</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>109
<FILENAME>R95.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422672376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - Employee Benefit Plans (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</strong></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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount', window );">Defined Contribution Plan, Employer Discretionary Contribution Amount</a></td>
<td class="nump">$ 165<span></span>
</td>
<td class="nump">$ 167<span></span>
</td>
<td class="nump">$ 171<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_DefinedContributionPlanEmployerDiscretionaryContributionAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 discretionary contributions made by an employer to a defined contribution plan.</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_DefinedContributionPlanEmployerDiscretionaryContributionAmount</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>110
<FILENAME>R96.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386416958648">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 14 - Leases (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_fil_LesseeOperatingLeaseForParkingLotTermOfContract', window );">Lessee Operating Lease for Parking Lot Term of Contract</a></td>
<td class="text">10 years<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_fil_LesseeOperatingLeaseForAutomobileTermOfContract', window );">Lessee Operating Lease for Automobile Term of Contract</a></td>
<td class="text">30 months<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI', window );">Lessee Operating Lease For Parking Lot Adjustment To Lease Payments Required Every Five Years Based On Change In CPI</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 87<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<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_us-gaap_OperatingLeaseCost', window );">Operating Lease, Cost</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 63<span></span>
</td>
<td class="nump">$ 61<span></span>
</td>
<td class="nump">$ 60<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_LesseeOperatingLeaseForAutomobileTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 Lessee Operating Lease for Automobile Term of Contract, during the indicated time 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;">fil_LesseeOperatingLeaseForAutomobileTermOfContract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 monetary amount of Lessee Operating Lease For Parking Lot Adjustment To Lease Payments Required Every Five Years Based On Change In CPI, during the indicated time 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;">fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_fil_LesseeOperatingLeaseForParkingLotTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 Lessee Operating Lease for Parking Lot Term of Contract, during the indicated time 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;">fil_LesseeOperatingLeaseForParkingLotTermOfContract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</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_OperatingLeaseCost">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.</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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<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_OperatingLeaseCost</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>111
<FILENAME>R97.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386418740776">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 14 - Leases: Reconciliation of operating lease liabilities (Details) - USD ($)<br> $ in Thousands</strong></div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</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_TextBlockAbstract', window );"><strong>Details</strong></a></td>
<td class="text">&#160;<span></span>
</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_us-gaap_OperatingLeaseRightOfUseAsset', window );">Right-of-Use Asset</a></td>
<td class="nump">$ 449<span></span>
</td>
<td class="nump">$ 377<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_us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList', window );">Operating Lease, Liability, Current, Statement of Financial Position</a></td>
<td class="text">Accrued expenses (note 2)<span></span>
</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_us-gaap_AccruedLiabilitiesCurrent', window );">Accrued expenses (note 2)</a></td>
<td class="nump">$ 2,984<span></span>
</td>
<td class="nump">3,003<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_us-gaap_OperatingLeaseLiabilityCurrent', window );">Operating Lease, Liability, Current</a></td>
<td class="nump">52<span></span>
</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_us-gaap_OperatingLeaseLiabilityNoncurrent', window );">Long term lease liability</a></td>
<td class="nump">396<span></span>
</td>
<td class="nump">$ 335<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_us-gaap_OperatingLeaseLiability', window );">Operating Lease, Liability</a></td>
<td class="nump">$ 449<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_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://fasb.org/us-gaap/role/ref/legacyRef<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=120391452&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_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Present value of lessee's discounted obligation for lease payments from operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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_OperatingLeaseLiability</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_OperatingLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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_OperatingLeaseLiabilityCurrent</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_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Indicates line item in statement of financial position that includes current operating lease liability.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918631-209977<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_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList</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>enum2:enumerationSetItemType</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_OperatingLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Present value of lessee's discounted obligation for lease payments from operating lease, 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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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_OperatingLeaseLiabilityNoncurrent</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_OperatingLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's right to use underlying asset under operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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_OperatingLeaseRightOfUseAsset</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>112
<FILENAME>R98.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386411156232">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Details)<br> $ in Thousands</strong></div></th>
<th class="th">
<div>Dec. 31, 2021 </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_TextBlockAbstract', window );"><strong>Details</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_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">Lessee, Operating Lease, Liability, to be Paid, Year One</a></td>
<td class="nump">$ 66<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_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">Lessee, Operating Lease, Liability, to be Paid, Year Two</a></td>
<td class="nump">66<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_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree', window );">Lessee, Operating Lease, Liability, to be Paid, Year Three</a></td>
<td class="nump">57<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_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">Lessee, Operating Lease, Liability, to be Paid, Year Four</a></td>
<td class="nump">49<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_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive', window );">Lessee, Operating Lease, Liability, to be Paid, Year Five</a></td>
<td class="nump">49<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_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive', window );">Lessee, Operating Lease, Liability, to be Paid, after Year Five</a></td>
<td class="nump">227<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_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Lessee, Operating Lease, Liability, to be Paid</a></td>
<td class="nump">514<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_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Lessee, Operating Lease, Liability, Undiscounted Excess Amount</a></td>
<td class="num">(65)<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_us-gaap_OperatingLeaseLiability', window );">Operating Lease, Liability</a></td>
<td class="nump">$ 449<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_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating Lease, Weighted Average Remaining Lease Term</a></td>
<td class="text">9 years 1 month 6 days<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_us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating Lease, Weighted Average Discount Rate, Percent</a></td>
<td class="nump">3.60%<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_LesseeOperatingLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's undiscounted obligation for lease payment for operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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_LesseeOperatingLeaseLiabilityPaymentsDue</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_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive</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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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_LesseeOperatingLeaseLiabilityPaymentsDueYearFive</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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918701-209980<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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</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_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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>Present value of lessee's discounted obligation for lease payments from operating lease.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<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_OperatingLeaseLiability</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_OperatingLeaseWeightedAverageDiscountRatePercent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 discount rate for operating lease calculated at point in time.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<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_OperatingLeaseWeightedAverageDiscountRatePercent</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>dtr-types:percentItemType</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_OperatingLeaseWeightedAverageRemainingLeaseTerm1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents 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/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 55<br> -Paragraph 53<br> -URI http://asc.fasb.org/extlink&amp;oid=123414884&amp;loc=SL77918982-209971<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(3)<br> -URI http://asc.fasb.org/extlink&amp;oid=123408670&amp;loc=SL77918686-209980<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_OperatingLeaseWeightedAverageRemainingLeaseTerm1</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>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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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>113
<FILENAME>R99.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386422731160">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 15 - CSI Distribution Agreement Purchase Disclosure (Details) - CooperSurgical Inc<br> $ in Thousands</strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th">
<div>Mar. 31, 2019 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Dec. 31, 2021 </div>
<div>USD ($)</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_us-gaap_FinitelivedIntangibleAssetsAcquired1', window );">Finite-lived Intangible Assets Acquired</a></td>
<td class="nump">$ 21,000<span></span>
</td>
<td class="nump">$ 21,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_fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem', window );">Remaining years of exclusive U.S. distribution rights for Femcare's Filshie Clip System</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">4.75<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 Remaining years of exclusive U.S. distribution rights for Femcare's Filshie Clip System, during the indicated time 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;">fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>fil_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:decimalItemType</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_FinitelivedIntangibleAssetsAcquired1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.</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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)(1)<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_FinitelivedIntangibleAssetsAcquired1</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_fil_DistributionRightsAcquisitionAxis=fil_CoopersurgicalIncMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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;">fil_DistributionRightsAcquisitionAxis=fil_CoopersurgicalIncMember</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>114
<FILENAME>R100.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.22.1</span><table class="report" border="0" cellspacing="2" id="idm140386412619208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Details) - USD ($)<br> $ / shares in Units, shares in Thousands, $ in Thousands</strong></div></th>
<th class="th" colspan="12">3 Months Ended</th>
<th class="th" colspan="3">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Sep. 30, 2021</div></th>
<th class="th"><div>Jun. 30, 2021</div></th>
<th class="th"><div>Mar. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Sep. 30, 2020</div></th>
<th class="th"><div>Jun. 30, 2020</div></th>
<th class="th"><div>Mar. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</div></th>
<th class="th"><div>Sep. 30, 2019</div></th>
<th class="th"><div>Jun. 30, 2019</div></th>
<th class="th"><div>Mar. 31, 2019</div></th>
<th class="th"><div>Dec. 31, 2021</div></th>
<th class="th"><div>Dec. 31, 2020</div></th>
<th class="th"><div>Dec. 31, 2019</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_TextBlockAbstract', window );"><strong>Details</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>
<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>
<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 custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="top.Show.showAR( this, 'defref_us-gaap_ProfitLoss', window );">Net income</a></td>
<td class="nump">$ 4,131<span></span>
</td>
<td class="nump">$ 4,206<span></span>
</td>
<td class="nump">$ 3,426<span></span>
</td>
<td class="nump">$ 3,024<span></span>
</td>
<td class="nump">$ 3,412<span></span>
</td>
<td class="nump">$ 2,933<span></span>
</td>
<td class="nump">$ 1,313<span></span>
</td>
<td class="nump">$ 3,140<span></span>
</td>
<td class="nump">$ 4,359<span></span>
</td>
<td class="nump">$ 3,705<span></span>
</td>
<td class="nump">$ 3,525<span></span>
</td>
<td class="nump">$ 3,139<span></span>
</td>
<td class="nump">$ 14,788<span></span>
</td>
<td class="nump">$ 10,798<span></span>
</td>
<td class="nump">$ 14,727<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_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Weighted average shares, basic</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>
<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>
<td class="nump">3,647<span></span>
</td>
<td class="nump">3,658<span></span>
</td>
<td class="nump">3,721<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_us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment', window );">Dilutive effect of stock options</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>
<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>
<td class="nump">13<span></span>
</td>
<td class="nump">14<span></span>
</td>
<td class="nump">18<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_us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding', window );">Diluted shares</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>
<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>
<td class="nump">3,660<span></span>
</td>
<td class="nump">3,672<span></span>
</td>
<td class="nump">3,739<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_us-gaap_EarningsPerShareBasic', window );">Earnings per share, basic</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>
<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>
<td class="nump">$ 4.05<span></span>
</td>
<td class="nump">$ 2.95<span></span>
</td>
<td class="nump">$ 3.96<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_us-gaap_EarningsPerShareDiluted', window );">Earnings Per Share Diluted</a></td>
<td class="nump">$ 1.13<span></span>
</td>
<td class="nump">$ 1.15<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 0.83<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 0.80<span></span>
</td>
<td class="nump">$ 0.36<span></span>
</td>
<td class="nump">$ 0.84<span></span>
</td>
<td class="nump">$ 1.17<span></span>
</td>
<td class="nump">$ 0.99<span></span>
</td>
<td class="nump">$ 0.94<span></span>
</td>
<td class="nump">$ 0.84<span></span>
</td>
<td class="nump">$ 4.04<span></span>
</td>
<td class="nump">$ 2.94<span></span>
</td>
<td class="nump">$ 3.94<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_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/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&amp;loc=d3e1448-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 9: http://www.xbrl.org/2003/role/exampleRef<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=125512782&amp;loc=d3e4984-109258<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&amp;loc=d3e1252-109256<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<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>dtr-types: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/exampleRef<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=125512782&amp;loc=d3e4984-109258<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 55<br> -Paragraph 15<br> -URI http://asc.fasb.org/extlink&amp;oid=125512782&amp;loc=d3e3842-109258<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&amp;loc=d3e1252-109256<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (d)<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=SL5780133-109256<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(27))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(23))<br> -URI http://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=125511455&amp;loc=d3e1337-109256<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (e)(4)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(25))<br> -URI http://asc.fasb.org/extlink&amp;oid=123367319&amp;loc=SL114868664-224227<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>dtr-types: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_ProfitLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 consolidated profit or loss for the period, net of income taxes, including the portion attributable to the 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/disclosureRef<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(g)(1)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669619-108580<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (a)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8736-108599<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123482062&amp;loc=SL123482106-238011<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 12: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI http://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8906-108599<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI http://asc.fasb.org/extlink&amp;oid=123570139&amp;loc=d3e3000-108585<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 19<br> -URI http://asc.fasb.org/extlink&amp;oid=123454820&amp;loc=SL4569616-111683<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI http://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8933-108599<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI http://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI http://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 235<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-05(b)(2))<br> -URI http://asc.fasb.org/extlink&amp;oid=120399901&amp;loc=d3e537907-122884<br><br>Reference 23: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI http://asc.fasb.org/extlink&amp;oid=123359005&amp;loc=d3e8924-108599<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI http://asc.fasb.org/extlink&amp;oid=124509347&amp;loc=SL7669625-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442552-122756<br><br>Reference 29: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI http://asc.fasb.org/extlink&amp;oid=124359900&amp;loc=SL124442526-122756<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1A<br> -Subparagraph (c)(1)<br> -URI http://asc.fasb.org/extlink&amp;oid=109239629&amp;loc=SL4573702-111684<br><br>Reference 31: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4J<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591551-111686<br><br>Reference 32: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4K<br> -URI http://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4591552-111686<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI http://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<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_ProfitLoss</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_TextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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_TextBlockAbstract</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_WeightedAverageNumberDilutedSharesOutstandingAdjustment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="top.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 sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.</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/2009/role/commonPracticeRef<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=124432515&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_WeightedAverageNumberDilutedSharesOutstandingAdjustment</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/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&amp;loc=d3e1505-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_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/disclosureRef<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=124432515&amp;loc=d3e3550-109257<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<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=125511455&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>115
<FILENAME>utmd-20211231_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns:country="http://xbrl.sec.gov/country/2021"
  xmlns:dei="http://xbrl.sec.gov/dei/2021q4"
  xmlns:fil="http://www.utahmed.com/20211231"
  xmlns:iso4217="http://www.xbrl.org/2003/iso4217"
  xmlns:link="http://www.xbrl.org/2003/linkbase"
  xmlns:srt="http://fasb.org/srt/2021-01-31"
  xmlns:us-gaap="http://fasb.org/us-gaap/2021-01-31"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink">
    <link:schemaRef xlink:href="utmd-20211231.xsd" xlink:type="simple"/>
    <context id="Y21">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="E21">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="E21Q2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <instant>2021-06-30</instant>
        </period>
    </context>
    <context id="I220324">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <instant>2022-03-24</instant>
        </period>
    </context>
    <context id="D211231">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2021-12-31</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="E20">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Y20">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="E19">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="E18">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="Y21_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y21_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y21_StEqComps-ComprIncome">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y21_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="E18_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="E18_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="E18_StEqComps-ComprIncome">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="E18_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2018-12-31</instant>
        </period>
    </context>
    <context id="Y19_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y19_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y19_StEqComps-ComprIncome">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y19_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="E19_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="E19_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="E19_StEqComps-ComprIncome">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="E19_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2019-12-31</instant>
        </period>
    </context>
    <context id="Y20_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y20_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y20_StEqComps-ComprIncome">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y20_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="E20_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="E20_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="E20_StEqComps-ComprIncome">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="E20_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="E21_StEqComps-CommonStock">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_StEqComps-AddPaidInCap">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:AdditionalPaidInCapitalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_StEqComps-ComprIncome">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:ComprehensiveIncomeMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_StEqComps-RetainedEarnings">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="Y21_Range-Minimum_PpeByType-BuildingAndBuildingImprovements">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y21_Range-Maximum_PpeByType-BuildingAndBuildingImprovements">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:BuildingAndBuildingImprovementsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y21_Range-Minimum_PpeByType-Equipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y21_Range-Maximum_PpeByType-Equipment">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PropertyPlantAndEquipmentByTypeAxis">us-gaap:EquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y21_Range-Minimum">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MinimumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y21_Range-Maximum">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y19Q1_DistributionRightsAcquisition-CoopersurgicalInc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="fil:DistributionRightsAcquisitionAxis">fil:CoopersurgicalIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="E21_DistributionRightsAcquisition-CoopersurgicalInc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="fil:DistributionRightsAcquisitionAxis">fil:CoopersurgicalIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="Y21Q1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-03-31</endDate>
        </period>
    </context>
    <context id="Y21Q2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2021-04-01</startDate>
            <endDate>2021-06-30</endDate>
        </period>
    </context>
    <context id="Y21Q3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2021-07-01</startDate>
            <endDate>2021-09-30</endDate>
        </period>
    </context>
    <context id="Y21Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2021-10-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20Q1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-03-31</endDate>
        </period>
    </context>
    <context id="Y20Q2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2020-04-01</startDate>
            <endDate>2020-06-30</endDate>
        </period>
    </context>
    <context id="Y20Q3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2020-07-01</startDate>
            <endDate>2020-09-30</endDate>
        </period>
    </context>
    <context id="Y20Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2020-10-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19Q1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-03-31</endDate>
        </period>
    </context>
    <context id="Y19Q2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2019-04-01</startDate>
            <endDate>2019-06-30</endDate>
        </period>
    </context>
    <context id="Y19Q3">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2019-07-01</startDate>
            <endDate>2019-09-30</endDate>
        </period>
    </context>
    <context id="Y19Q4">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
        </entity>
        <period>
            <startDate>2019-10-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="E21_StGeo-U.S.AndCanada">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:U.S.AndCanadaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_StGeo-EnglandAndAustralia">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:EnglandAndAustraliaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="E21_StGeo-IE">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IE</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="E20_StGeo-U.S.AndCanada">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:U.S.AndCanadaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="E20_StGeo-EnglandAndAustralia">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:EnglandAndAustraliaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="E20_StGeo-IE">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:IE</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-12-31</instant>
        </period>
    </context>
    <context id="Y21_StScenario-Range1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">fil:Range1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="E21_StScenario-Range1">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">fil:Range1Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="Y21_StScenario-Range2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">fil:Range2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="E21_StScenario-Range2">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementScenarioAxis">fil:Range2Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-12-31</instant>
        </period>
    </context>
    <context id="Y21_ProductOrService-Obstetrics_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:ObstetricsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_ProductOrService-Obstetrics_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:ObstetricsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_ProductOrService-Obstetrics_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:ObstetricsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_ProductOrService-Neonatal_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NeonatalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_ProductOrService-Neonatal_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NeonatalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_ProductOrService-Neonatal_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NeonatalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_StGeo-Global">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:GlobalMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_ProductOrService-Obstetrics_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:ObstetricsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_ProductOrService-Obstetrics_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:ObstetricsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_ProductOrService-Obstetrics_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:ObstetricsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:GynecologyElectrosurgeryUrologyMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_ProductOrService-Neonatal_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NeonatalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_ProductOrService-Neonatal_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NeonatalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_ProductOrService-Neonatal_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:NeonatalMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:ProductOrServiceAxis">fil:BloodPressureMonitoringandAccessoriesMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <context id="Y20_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-01-01</startDate>
            <endDate>2020-12-31</endDate>
        </period>
    </context>
    <context id="Y19_StGeo-Ous">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">fil:OusMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2019-01-01</startDate>
            <endDate>2019-12-31</endDate>
        </period>
    </context>
    <context id="Y21_DistributionRightsAcquisition-CoopersurgicalInc">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0000706698</identifier>
            <segment>
                <xbrldi:explicitMember dimension="fil:DistributionRightsAcquisitionAxis">fil:CoopersurgicalIncMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-01-01</startDate>
            <endDate>2021-12-31</endDate>
        </period>
    </context>
    <unit id="Pure">
        <measure>pure</measure>
    </unit>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Shares">
        <measure>shares</measure>
    </unit>
    <unit id="UsdPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <dei:EntityCentralIndexKey contextRef="Y21" id="fact1">0000706698</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="Y21" id="fact2">false</dei:AmendmentFlag>
    <dei:DocumentFiscalYearFocus contextRef="Y21" id="fact3">2021</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus contextRef="Y21" id="fact4">FY</dei:DocumentFiscalPeriodFocus>
    <us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList contextRef="E21" id="fact5">http://fasb.org/us-gaap/2021-01-31#PropertyPlantAndEquipmentNet</us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList contextRef="E20" id="fact6">http://fasb.org/us-gaap/2021-01-31#PropertyPlantAndEquipmentNet</us-gaap:OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList>
    <us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList contextRef="E21" id="fact7">http://fasb.org/us-gaap/2021-01-31#AccruedLiabilitiesCurrent</us-gaap:OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList>
    <dei:DocumentType contextRef="Y21">10-K</dei:DocumentType>
    <dei:DocumentAnnualReport contextRef="Y21">true</dei:DocumentAnnualReport>
    <dei:DocumentPeriodEndDate contextRef="Y21">2021-12-31</dei:DocumentPeriodEndDate>
    <dei:CurrentFiscalYearEndDate contextRef="Y21">--12-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentTransitionReport contextRef="Y21">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="Y21">001-12575</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="Y21">UTAH MEDICAL PRODUCTS INC</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="Y21">UT</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="Y21">87-0342734</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="Y21">7043 South 300 West</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="Y21">Midvale</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="Y21">UT</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="Y21">84047</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="Y21">801</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="Y21">566-1200</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="Y21">Common stock, $0.01 par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="Y21">UTMD</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="Y21">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityWellKnownSeasonedIssuer contextRef="Y21">No</dei:EntityWellKnownSeasonedIssuer>
    <dei:EntityVoluntaryFilers contextRef="Y21">No</dei:EntityVoluntaryFilers>
    <dei:EntityCurrentReportingStatus contextRef="Y21">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="Y21">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="Y21">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="Y21">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="Y21">false</dei:EntityEmergingGrowthCompany>
    <dei:IcfrAuditorAttestationFlag contextRef="Y21">false</dei:IcfrAuditorAttestationFlag>
    <dei:EntityShellCompany contextRef="Y21">false</dei:EntityShellCompany>
    <dei:EntityPublicFloat contextRef="E21Q2" decimals="INF" unitRef="USD">286135700</dei:EntityPublicFloat>
    <dei:EntityCommonStockSharesOutstanding contextRef="I220324" decimals="INF" unitRef="Shares">3654987</dei:EntityCommonStockSharesOutstanding>
    <dei:DocumentsIncorporatedByReferenceTextBlock contextRef="Y21">The Company&#x2019;s definitive proxy statement for the Annual Meeting of Stockholders is incorporated by reference into Part III, Item 10, 11, 12, 13 and 14 of this Form 10-K.</dei:DocumentsIncorporatedByReferenceTextBlock>
    <dei:AuditorName contextRef="Y21">Haynie &amp;amp; Company</dei:AuditorName>
    <dei:AuditorLocation contextRef="Y21">Salt Lake City, Utah</dei:AuditorLocation>
    <dei:AuditorFirmId contextRef="Y21">457</dei:AuditorFirmId>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E21" decimals="-3" unitRef="USD">60974000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E20" decimals="-3" unitRef="USD">51590000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AccountsReceivableNetCurrent contextRef="E21" decimals="-3" unitRef="USD">5132000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent contextRef="E20" decimals="-3" unitRef="USD">4104000</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:InventoryNet contextRef="E21" decimals="-3" unitRef="USD">6596000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="E20" decimals="-3" unitRef="USD">6222000</us-gaap:InventoryNet>
    <us-gaap:OtherAssetsCurrent contextRef="E21" decimals="-3" unitRef="USD">456000</us-gaap:OtherAssetsCurrent>
    <us-gaap:OtherAssetsCurrent contextRef="E20" decimals="-3" unitRef="USD">346000</us-gaap:OtherAssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="E21" decimals="-3" unitRef="USD">73158000</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent contextRef="E20" decimals="-3" unitRef="USD">62262000</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E21" decimals="-3" unitRef="USD">11067000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E20" decimals="-3" unitRef="USD">11326000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Goodwill contextRef="E21" decimals="-3" unitRef="USD">14098000</us-gaap:Goodwill>
    <us-gaap:Goodwill contextRef="E20" decimals="-3" unitRef="USD">14164000</us-gaap:Goodwill>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="E21" decimals="-3" unitRef="USD">55865000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="E20" decimals="-3" unitRef="USD">56159000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="E21" decimals="-3" unitRef="USD">38552000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="E20" decimals="-3" unitRef="USD">32166000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="E21" decimals="-3" unitRef="USD">17313000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill contextRef="E20" decimals="-3" unitRef="USD">23993000</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:Assets contextRef="E21" decimals="-3" unitRef="USD">115636000</us-gaap:Assets>
    <us-gaap:Assets contextRef="E20" decimals="-3" unitRef="USD">111745000</us-gaap:Assets>
    <us-gaap:AccountsPayableCurrent contextRef="E21" decimals="-3" unitRef="USD">761000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccountsPayableCurrent contextRef="E20" decimals="-3" unitRef="USD">788000</us-gaap:AccountsPayableCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="E21" decimals="-3" unitRef="USD">2984000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="E20" decimals="-3" unitRef="USD">3003000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="E21" decimals="-3" unitRef="USD">3745000</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent contextRef="E20" decimals="-3" unitRef="USD">3791000</us-gaap:LiabilitiesCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="E21" decimals="-3" unitRef="USD">396000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="E20" decimals="-3" unitRef="USD">335000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent contextRef="E21" decimals="-3" unitRef="USD">1675000</us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent>
    <us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent contextRef="E20" decimals="-3" unitRef="USD">1995000</us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets contextRef="E21" decimals="-3" unitRef="USD">2105000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets contextRef="E20" decimals="-3" unitRef="USD">2151000</us-gaap:DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="E21" decimals="-3" unitRef="USD">577000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:DeferredIncomeTaxLiabilitiesNet contextRef="E20" decimals="-3" unitRef="USD">651000</us-gaap:DeferredIncomeTaxLiabilitiesNet>
    <us-gaap:Liabilities contextRef="E21" decimals="-3" unitRef="USD">8498000</us-gaap:Liabilities>
    <us-gaap:Liabilities contextRef="E20" decimals="-3" unitRef="USD">8923000</us-gaap:Liabilities>
    <us-gaap:CommitmentsAndContingencies contextRef="E21" decimals="-3" unitRef="USD">0</us-gaap:CommitmentsAndContingencies>
    <us-gaap:CommitmentsAndContingencies contextRef="E20" decimals="-3" unitRef="USD">0</us-gaap:CommitmentsAndContingencies>
    <us-gaap:CommonStockParOrStatedValuePerShare contextRef="E21" decimals="INF" unitRef="UsdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockParOrStatedValuePerShare contextRef="E20" decimals="INF" unitRef="UsdPerShare">0.01</us-gaap:CommonStockParOrStatedValuePerShare>
    <us-gaap:CommonStockSharesAuthorized contextRef="E21" decimals="-3" unitRef="Shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized contextRef="E20" decimals="-3" unitRef="Shares">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesIssued contextRef="E21" decimals="-3" unitRef="Shares">3655000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="E21" decimals="-3" unitRef="Shares">3655000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued contextRef="E20" decimals="-3" unitRef="Shares">3643000</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding contextRef="E20" decimals="-3" unitRef="Shares">3643000</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue contextRef="E21" decimals="-3" unitRef="USD">37000</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue contextRef="E20" decimals="-3" unitRef="USD">36000</us-gaap:CommonStockValue>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1 contextRef="E21" decimals="-3" unitRef="USD">-9054000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1 contextRef="E20" decimals="-3" unitRef="USD">-8281000</us-gaap:AccumulatedOtherComprehensiveIncomeLossBeforeTax1>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="E21" decimals="-3" unitRef="USD">841000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:AdditionalPaidInCapitalCommonStock contextRef="E20" decimals="-3" unitRef="USD">115000</us-gaap:AdditionalPaidInCapitalCommonStock>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="E21" decimals="-3" unitRef="USD">115314000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit contextRef="E20" decimals="-3" unitRef="USD">110952000</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquity contextRef="E21" decimals="-3" unitRef="USD">107138000</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity contextRef="E20" decimals="-3" unitRef="USD">102822000</us-gaap:StockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="E21" decimals="-3" unitRef="USD">115636000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity contextRef="E20" decimals="-3" unitRef="USD">111745000</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y21" decimals="-3" unitRef="USD">49054000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y20" decimals="-3" unitRef="USD">42178000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y19" decimals="-3" unitRef="USD">46904000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="Y21" decimals="-3" unitRef="USD">18137000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="Y20" decimals="-3" unitRef="USD">16630000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold contextRef="Y19" decimals="-3" unitRef="USD">17438000</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit contextRef="Y21" decimals="-3" unitRef="USD">30917000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y20" decimals="-3" unitRef="USD">25548000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y19" decimals="-3" unitRef="USD">29466000</us-gaap:GrossProfit>
    <us-gaap:SellingAndMarketingExpense contextRef="Y21" decimals="-3" unitRef="USD">1414000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="Y20" decimals="-3" unitRef="USD">1554000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:SellingAndMarketingExpense contextRef="Y19" decimals="-3" unitRef="USD">1738000</us-gaap:SellingAndMarketingExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="Y21" decimals="-3" unitRef="USD">526000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="Y20" decimals="-3" unitRef="USD">486000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:ResearchAndDevelopmentExpense contextRef="Y19" decimals="-3" unitRef="USD">483000</us-gaap:ResearchAndDevelopmentExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="Y21" decimals="-3" unitRef="USD">10097000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="Y20" decimals="-3" unitRef="USD">9800000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:GeneralAndAdministrativeExpense contextRef="Y19" decimals="-3" unitRef="USD">9613000</us-gaap:GeneralAndAdministrativeExpense>
    <us-gaap:OperatingIncomeLoss contextRef="Y21" decimals="-3" unitRef="USD">18880000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="Y20" decimals="-3" unitRef="USD">13708000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss contextRef="Y19" decimals="-3" unitRef="USD">17632000</us-gaap:OperatingIncomeLoss>
    <us-gaap:OtherInterestAndDividendIncome contextRef="Y21" decimals="-3" unitRef="USD">166000</us-gaap:OtherInterestAndDividendIncome>
    <us-gaap:OtherInterestAndDividendIncome contextRef="Y20" decimals="-3" unitRef="USD">112000</us-gaap:OtherInterestAndDividendIncome>
    <us-gaap:OtherInterestAndDividendIncome contextRef="Y19" decimals="-3" unitRef="USD">254000</us-gaap:OtherInterestAndDividendIncome>
    <us-gaap:RoyaltyIncomeNonoperating contextRef="Y21" decimals="-3" unitRef="USD">15000</us-gaap:RoyaltyIncomeNonoperating>
    <us-gaap:RoyaltyIncomeNonoperating contextRef="Y20" decimals="-3" unitRef="USD">20000</us-gaap:RoyaltyIncomeNonoperating>
    <us-gaap:RoyaltyIncomeNonoperating contextRef="Y19" decimals="-3" unitRef="USD">6000</us-gaap:RoyaltyIncomeNonoperating>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="Y21" decimals="-3" unitRef="USD">0</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="Y20" decimals="-3" unitRef="USD">0</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense contextRef="Y19" decimals="-3" unitRef="USD">-8000</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="Y21" decimals="-3" unitRef="USD">19061000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="Y20" decimals="-3" unitRef="USD">13840000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="Y19" decimals="-3" unitRef="USD">17884000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y21" decimals="-3" unitRef="USD">4273000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y20" decimals="-3" unitRef="USD">3042000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y19" decimals="-3" unitRef="USD">3157000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ProfitLoss contextRef="Y21" decimals="-3" unitRef="USD">14788000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y20" decimals="-3" unitRef="USD">10798000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y19" decimals="-3" unitRef="USD">14727000</us-gaap:ProfitLoss>
    <us-gaap:EarningsPerShareBasic contextRef="Y21" decimals="INF" unitRef="UsdPerShare">4.05</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="Y20" decimals="INF" unitRef="UsdPerShare">2.95</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="Y19" decimals="INF" unitRef="UsdPerShare">3.96</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted contextRef="Y21" decimals="INF" unitRef="UsdPerShare">4.04</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y20" decimals="INF" unitRef="UsdPerShare">2.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y19" decimals="INF" unitRef="UsdPerShare">3.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax contextRef="Y21" decimals="INF" unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax contextRef="Y20" decimals="INF" unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax contextRef="Y19" decimals="INF" unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="Y21" decimals="-3" unitRef="USD">-773000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="Y20" decimals="-3" unitRef="USD">1502000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="Y19" decimals="-3" unitRef="USD">1507000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="Y21" decimals="-3" unitRef="USD">14015000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="Y20" decimals="-3" unitRef="USD">12300000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ComprehensiveIncomeNetOfTax contextRef="Y19" decimals="-3" unitRef="USD">16234000</us-gaap:ComprehensiveIncomeNetOfTax>
    <us-gaap:ProfitLoss contextRef="Y21" decimals="-3" unitRef="USD">14788000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y20" decimals="-3" unitRef="USD">10798000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y19" decimals="-3" unitRef="USD">14727000</us-gaap:ProfitLoss>
    <us-gaap:Depreciation contextRef="Y21" decimals="-3" unitRef="USD">636000</us-gaap:Depreciation>
    <us-gaap:Depreciation contextRef="Y20" decimals="-3" unitRef="USD">655000</us-gaap:Depreciation>
    <us-gaap:Depreciation contextRef="Y19" decimals="-3" unitRef="USD">700000</us-gaap:Depreciation>
    <us-gaap:AmortizationOfIntangibleAssets contextRef="Y21" decimals="-3" unitRef="USD">6645000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets contextRef="Y20" decimals="-3" unitRef="USD">6515000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets contextRef="Y19" decimals="-3" unitRef="USD">6144000</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:ProvisionForDoubtfulAccounts contextRef="Y21" decimals="-3" unitRef="USD">24000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts contextRef="Y20" decimals="-3" unitRef="USD">-5000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts contextRef="Y19" decimals="-3" unitRef="USD">14000</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense contextRef="Y21" decimals="-3" unitRef="USD">3000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense contextRef="Y20" decimals="-3" unitRef="USD">39000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense contextRef="Y19" decimals="-3" unitRef="USD">38000</us-gaap:OperatingLeaseRightOfUseAssetAmortizationExpense>
    <us-gaap:GainLossOnDispositionOfAssets contextRef="Y21" decimals="-3" unitRef="USD">0</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets contextRef="Y20" decimals="-3" unitRef="USD">-1000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:GainLossOnDispositionOfAssets contextRef="Y19" decimals="-3" unitRef="USD">-16000</us-gaap:GainLossOnDispositionOfAssets>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="Y21" decimals="-3" unitRef="USD">-92000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="Y20" decimals="-3" unitRef="USD">-26000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:DeferredIncomeTaxExpenseBenefit contextRef="Y19" decimals="-3" unitRef="USD">-396000</us-gaap:DeferredIncomeTaxExpenseBenefit>
    <us-gaap:ShareBasedCompensation contextRef="Y21" decimals="-3" unitRef="USD">166000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation contextRef="Y20" decimals="-3" unitRef="USD">160000</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation contextRef="Y19" decimals="-3" unitRef="USD">113000</us-gaap:ShareBasedCompensation>
    <us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities contextRef="Y21" decimals="-3" unitRef="USD">-39000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities>
    <us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities contextRef="Y20" decimals="-3" unitRef="USD">-7000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities>
    <us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities contextRef="Y19" decimals="-3" unitRef="USD">-23000</us-gaap:ExcessTaxBenefitFromShareBasedCompensationOperatingActivities>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="Y21" decimals="-3" unitRef="USD">1088000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="Y20" decimals="-3" unitRef="USD">-617000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable contextRef="Y19" decimals="-3" unitRef="USD">738000</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInOtherReceivables contextRef="Y21" decimals="-3" unitRef="USD">42000</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInOtherReceivables contextRef="Y20" decimals="-3" unitRef="USD">-45000</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInOtherReceivables contextRef="Y19" decimals="-3" unitRef="USD">16000</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInInventories contextRef="Y21" decimals="-3" unitRef="USD">485000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="Y20" decimals="-3" unitRef="USD">-924000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories contextRef="Y19" decimals="-3" unitRef="USD">1686000</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="Y21" decimals="-3" unitRef="USD">81000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="Y20" decimals="-3" unitRef="USD">-108000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets contextRef="Y19" decimals="-3" unitRef="USD">16000</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="Y21" decimals="-3" unitRef="USD">-23000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="Y20" decimals="-3" unitRef="USD">-308000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccountsPayable contextRef="Y19" decimals="-3" unitRef="USD">114000</us-gaap:IncreaseDecreaseInAccountsPayable>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="Y21" decimals="-3" unitRef="USD">713000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="Y20" decimals="-3" unitRef="USD">607000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedLiabilities contextRef="Y19" decimals="-3" unitRef="USD">-1651000</us-gaap:IncreaseDecreaseInAccruedLiabilities>
    <us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense contextRef="Y21" decimals="-3" unitRef="USD">0</us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense>
    <us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense contextRef="Y20" decimals="-3" unitRef="USD">0</us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense>
    <us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense contextRef="Y19" decimals="-3" unitRef="USD">-330000</us-gaap:TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="Y21" decimals="-3" unitRef="USD">21203000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="Y20" decimals="-3" unitRef="USD">20137000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities contextRef="Y19" decimals="-3" unitRef="USD">17056000</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="Y21" decimals="-3" unitRef="USD">552000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="Y20" decimals="-3" unitRef="USD">860000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment contextRef="Y19" decimals="-3" unitRef="USD">540000</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireIntangibleAssets contextRef="Y21" decimals="-3" unitRef="USD">0</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsToAcquireIntangibleAssets contextRef="Y20" decimals="-3" unitRef="USD">0</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsToAcquireIntangibleAssets contextRef="Y19" decimals="-3" unitRef="USD">21000000</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="Y21" decimals="-3" unitRef="USD">-552000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="Y20" decimals="-3" unitRef="USD">-860000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities contextRef="Y19" decimals="-3" unitRef="USD">-21540000</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromIssuanceOfCommonStock contextRef="Y21" decimals="-3" unitRef="USD">560000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock contextRef="Y20" decimals="-3" unitRef="USD">358000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:ProceedsFromIssuanceOfCommonStock contextRef="Y19" decimals="-3" unitRef="USD">283000</us-gaap:ProceedsFromIssuanceOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock contextRef="Y21" decimals="-3" unitRef="USD">0</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock contextRef="Y20" decimals="-3" unitRef="USD">6976000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsForRepurchaseOfCommonStock contextRef="Y19" decimals="-3" unitRef="USD">398000</us-gaap:PaymentsForRepurchaseOfCommonStock>
    <us-gaap:PaymentsOfDividends contextRef="Y21" decimals="-3" unitRef="USD">11465000</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsOfDividends contextRef="Y20" decimals="-3" unitRef="USD">4116000</us-gaap:PaymentsOfDividends>
    <us-gaap:PaymentsOfDividends contextRef="Y19" decimals="-3" unitRef="USD">4112000</us-gaap:PaymentsOfDividends>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="Y21" decimals="-3" unitRef="USD">-10905000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="Y20" decimals="-3" unitRef="USD">-10734000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities contextRef="Y19" decimals="-3" unitRef="USD">-4227000</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents contextRef="Y21" decimals="-3" unitRef="USD">-362000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents contextRef="Y20" decimals="-3" unitRef="USD">260000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents contextRef="Y19" decimals="-3" unitRef="USD">386000</us-gaap:EffectOfExchangeRateOnCashAndCashEquivalents>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="Y21" decimals="-3" unitRef="USD">9384000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="Y20" decimals="-3" unitRef="USD">8803000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect contextRef="Y19" decimals="-3" unitRef="USD">-8325000</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E20" decimals="-3" unitRef="USD">51590000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E19" decimals="-3" unitRef="USD">42787000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E18" decimals="-3" unitRef="USD">51112000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E21" decimals="-3" unitRef="USD">60974000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E20" decimals="-3" unitRef="USD">51590000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue contextRef="E19" decimals="-3" unitRef="USD">42787000</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:IncomeTaxesPaid contextRef="Y21" decimals="-3" unitRef="USD">4617000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid contextRef="Y20" decimals="-3" unitRef="USD">3186000</us-gaap:IncomeTaxesPaid>
    <us-gaap:IncomeTaxesPaid contextRef="Y19" decimals="-3" unitRef="USD">5304000</us-gaap:IncomeTaxesPaid>
    <us-gaap:InterestPaid contextRef="Y21" decimals="-3" unitRef="USD">0</us-gaap:InterestPaid>
    <us-gaap:InterestPaid contextRef="Y20" decimals="-3" unitRef="USD">0</us-gaap:InterestPaid>
    <us-gaap:InterestPaid contextRef="Y19" decimals="-3" unitRef="USD">0</us-gaap:InterestPaid>
    <us-gaap:SharesOutstanding
      contextRef="E18_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">3720000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E18_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">37000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E18_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">122000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E18_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">-11290000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E18_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">100123000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="E18" decimals="-3" unitRef="USD">88992000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">7000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y19_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">290000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y19_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y19_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="Y19" decimals="-3" unitRef="USD">290000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">0</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions
      contextRef="Y19_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">-7000</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions
      contextRef="Y19_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions
      contextRef="Y19_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions contextRef="Y19" decimals="-3" unitRef="USD">-7000</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y19_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">113000</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y19_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y19_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense contextRef="Y19" decimals="-3" unitRef="USD">113000</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">-5000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="Y19_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">-499000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="Y19_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="Y19_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">101000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue contextRef="Y19" decimals="-3" unitRef="USD">-398000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y19_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y19_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">1507000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y19_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="Y19" decimals="-3" unitRef="USD">1507000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y19_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y19_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y19_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">4132000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash contextRef="Y19" decimals="-3" unitRef="USD">4132000</us-gaap:DividendsCommonStockCash>
    <us-gaap:ProfitLoss
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y19_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y19_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y19_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">14727000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y19" decimals="-3" unitRef="USD">14727000</us-gaap:ProfitLoss>
    <us-gaap:SharesOutstanding
      contextRef="E19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">3722000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">37000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E19_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">18000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E19_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">-9782000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E19_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">110820000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="E19" decimals="-3" unitRef="USD">101093000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">8000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y20_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">358000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y20_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y20_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="Y20" decimals="-3" unitRef="USD">358000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y20_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">160000</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y20_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y20_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense contextRef="Y20" decimals="-3" unitRef="USD">160000</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodShares
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">-87000</us-gaap:StockRepurchasedAndRetiredDuringPeriodShares>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">-1000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="Y20_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">-421000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="Y20_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue
      contextRef="Y20_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">-6555000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:StockRepurchasedAndRetiredDuringPeriodValue contextRef="Y20" decimals="-3" unitRef="USD">-6976000</us-gaap:StockRepurchasedAndRetiredDuringPeriodValue>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y20_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y20_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">1502000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y20_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="Y20" decimals="-3" unitRef="USD">1502000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y20_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y20_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y20_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">4112000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash contextRef="Y20" decimals="-3" unitRef="USD">4112000</us-gaap:DividendsCommonStockCash>
    <us-gaap:ProfitLoss
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y20_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y20_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y20_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">10798000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y20" decimals="-3" unitRef="USD">10798000</us-gaap:ProfitLoss>
    <us-gaap:SharesOutstanding
      contextRef="E20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">3643000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">36000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E20_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">115000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E20_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">-8280000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E20_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">110951000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="E20" decimals="-3" unitRef="USD">102822000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">14000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y21_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">787000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y21_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised
      contextRef="Y21_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised contextRef="Y21" decimals="-3" unitRef="USD">787000</us-gaap:StockIssuedDuringPeriodValueStockOptionsExercised>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">-2000</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions
      contextRef="Y21_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">-227000</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions
      contextRef="Y21_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions
      contextRef="Y21_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions contextRef="Y21" decimals="-3" unitRef="USD">-227000</fil:CommonStockReceivedAndRetiredUponExerciseOfStockOptions>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y21_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">166000</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y21_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense
      contextRef="Y21_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</us-gaap:StockOptionPlanExpense>
    <us-gaap:StockOptionPlanExpense contextRef="Y21" decimals="-3" unitRef="USD">166000</us-gaap:StockOptionPlanExpense>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y21_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y21_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">-773000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax
      contextRef="Y21_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">0</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax contextRef="Y21" decimals="-3" unitRef="USD">-773000</us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y21_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y21_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash
      contextRef="Y21_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">10425000</us-gaap:DividendsCommonStockCash>
    <us-gaap:DividendsCommonStockCash contextRef="Y21" decimals="-3" unitRef="USD">10425000</us-gaap:DividendsCommonStockCash>
    <us-gaap:ProfitLoss
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y21_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y21_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">0</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss
      contextRef="Y21_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">14788000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y21" decimals="-3" unitRef="USD">14788000</us-gaap:ProfitLoss>
    <us-gaap:SharesOutstanding
      contextRef="E21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">3655000</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="USD">36000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E21_StEqComps-AddPaidInCap"
      decimals="-3"
      unitRef="USD">842000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E21_StEqComps-ComprIncome"
      decimals="-3"
      unitRef="USD">-9053000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="E21_StEqComps-RetainedEarnings"
      decimals="-3"
      unitRef="USD">115314000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest contextRef="E21" decimals="-3" unitRef="USD">107138000</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:SignificantAccountingPoliciesTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 1 &#x2013;&#160;Summary of Significant Accounting Policies&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Organization&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Utah Medical Products, Inc. with headquarters in Midvale, Utah and its wholly-owned operating subsidiaries, Femcare Limited located in Romsey, Hampshire, England, Femcare Australia Pty Ltd located in Castle Hill, NSW, Australia, Utah Medical Products Canada, Inc. (dba Femcare Canada) located in Mississauga, Ontario, Canada and Utah Medical Products Ltd., which operates a manufacturing facility in Athlone, Ireland, (in the aggregate, the Company) are in the primary business of developing, manufacturing and globally distributing specialized medical devices for the healthcare industry. &#160;The Company&#x2019;s broad range of products includes those used in critical care areas and the labor and delivery departments of hospitals, as well as outpatient clinics and physicians&#x2019; offices. &#160;Products are sold directly to end-user facilities in the U.S., Ireland, UK, Canada, France and Australia, and through third party distributors in other outside the U.S. (OUS) markets. &#160;Domestically, until February 1, 2019, Femcare had an exclusive U.S. distribution relationship with CooperSurgical, Inc. (CSI) for the Filshie Clip System. &#160;UTMD also sells subcontract manufactured components and finished products to over 150 companies in the U.S. for their medical and non-medical products.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Use of Estimates in the Preparation of Financial Statements&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&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. &#160;Although actual results could differ from those estimates, management believes it has considered and disclosed all relevant information in making its estimates that materially affect reported performance and current values.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Principles of Consolidation&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The consolidated financial statements include those of the Company and its subsidiaries. &#160;All intercompany accounts and transactions have been eliminated in consolidation. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;For purposes of the consolidated statement of cash flows, the Company considers cash on deposit and short-term investments with original maturities of three months or less to be cash and cash equivalents.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Concentration of Credit Risk&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The primary concentration of credit risk consists of trade receivables. &#160;In the normal course of business, the Company provides credit terms to its customers. &#160;Accordingly, the Company performs ongoing credit evaluations of its customers and maintains allowances for possible losses which, when realized, have been within the range of management's expectations as reflected by its reserves. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company's customer base consists of hospitals, medical device distributors, physician practices and others directly related to healthcare providers, as well as other manufacturing companies. Although the Company is affected by the well-being of the global healthcare industry, management does not believe significant trade receivable credit risk exists at December&#160;31, 2021 except under an extreme global financial crisis.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company maintains its cash in bank deposit accounts in addition to Fidelity Investment money market accounts. &#160;The Company has not experienced any losses in such accounts and believes it is not exposed to a significant credit risk on cash and cash equivalent balances. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Accounts Receivable&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accounts receivable are amounts due on product sales and are unsecured. &#160;Accounts receivable are carried at their estimated collectible amounts. &#160;Credit is generally extended on a short-term basis; thus, accounts receivable do not bear interest although a late charge may be applied to such receivables that are past the due date. &#160;Accounts receivable are periodically evaluated for collectability based on past credit history of customers and current market conditions. &#160;Provisions for losses on accounts receivable are determined on the basis of loss experience, known and inherent risk in the account balance and current economic conditions (see note 2).&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Inventories&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Finished products, work-in-process, raw materials and supplies inventories are stated at the lower of cost and net realizable value (NRV) computed on a first-in, first-out method. &#160;Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable costs of completion, disposal, and transportation (see note 2). &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Property and Equipment&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Property and equipment are stated at cost. &#160;Depreciation and amortization are computed using the straight-line method over estimated useful lives as follows:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td colspan="2" style="width:391.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:298.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Building and improvements&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:92.7pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;15 - 40 years&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:298.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Furniture, equipment and tooling&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:92.7pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;3 - 10 years&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Long-Lived Assets&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company evaluates its long-lived assets in accordance with Accounting Standards Codification (ASC) 360, &#x201c;Accounting for the Impairment of Long-Lived Assets.&#x201d; &#160;Long-lived assets held and used by the Company are reviewed for impairment whenever events or changes in circumstances indicate that their net book value may not be recoverable. &#160;When such factors and circumstances exist, the Company compares the projected undiscounted future cash flows associated with the related asset or group of assets over their estimated useful lives against their respective carrying amounts. &#160;Impairment, if any, is based on the excess of the carrying amount over the fair value of those assets and is recorded in the period in which the determination was made. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Intangible Assets&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Costs associated with the acquisition of patents, trademarks, trade names, customer relationships, regulatory approvals &amp;amp; product certifications, license rights and non-compete agreements are capitalized, and are being amortized using the straight-line method over periods ranging from 5 to 20 years. UTMD&#x2019;s goodwill is tested for impairment annually, in the fourth quarter of each year, in accordance with ASC 350. UTMD also performs impairment tests contemporaneously, if circumstances change that would more than likely reduce the fair value of goodwill below its net book value. &#160;If UTMD determines that its goodwill is impaired, a second step is completed to measure the amount of the impairment loss. UTMD does not expect its goodwill to become impaired in the foreseeable future. &#160;Estimated future amortization expenses on intangible assets held as of December 31, 2021, using the 2021 year-end 1.3536 USD/GBP and0.7268 USD/AUD currency exchange rates, is about $6,542 in 2022, $5,805 in 2023, $2,121 in 2024, $2,121 in 2025, and $463 in 2026 (see note 2).&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;In 2019, $21,000 in intangible assets were acquired from CSI. &#160;The future amortization expenses on those assets are estimated to be $4,421 per year in 2022, and $3,684 in 2023 (see note 15).&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
 &lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Stock-Based Compensation &lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;At December 31, 2021, the Company has stock-based employee compensation plans, which are described more fully in note 8. &#160;The Company accounts for stock compensation under ASC 718, &lt;i&gt;Share-Based Payment&lt;/i&gt;. &#160;This statement requires the Company to recognize compensation cost based on the grant date fair value of options granted to employees and directors. In 2021, the Company recognized $166 in stock-based compensation cost compared to $160 in 2020 and $113 in 2019.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Revenue Recognition&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company recognizes revenue at the time of product shipment as UTMD meets its contractual performance obligations to the customer at the time of shipment. Revenue recognized by UTMD is based upon the consideration to which UTMD is entitled from its customers as a result of shipping a physical product, in accordance with the documented arrangements and fixed contracts in which the selling price was fixed prior to the Company&#x2019;s acceptance of an order. Revenue from service sales, which are immaterial to UTMD, is generally recognized when the service is completed and invoiced. As demonstrated by decades of experience in successful and consistent collections, there is very minor and insignificant uncertainty regarding the collectability of invoiced amounts reasonably within the terms of the Company&#x2019;s contracts. There are circumstances under which insignificant revenue may be recognized when product is not shipped, which meet the criteria of ASC 606: the Company provides engineering services, for example, design and production of manufacturing tooling that may be used in subsequent UTMD manufacturing of custom components for other companies. &#160;This revenue is recognized when UTMD&#x2019;s performance obligations have been completed according to a fixed contractual agreement. &#160;UTMD includes handling fees charged to customers in revenues. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt; &#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Income Taxes&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company accounts for income taxes under ASC 740, &#x201c;Accounting for Income Taxes,&#x201d; whereby deferred taxes are computed under the asset and liability method. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company accounts for deferred taxes under ASC 740, &#x201c;Accounting for Income Taxes,&#x201d; which requires that all deferred income taxes are classified as noncurrent in a classified statement of financial position.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The TCJA contains a deemed repatriation transition tax (REPAT tax) on accumulated earnings and profits of the Company&#x2019;s non-U.S. subsidiaries that have not been subject to U.S. tax. &#160;The Company has elected to pay its net REPAT tax over eight years. &#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company or one of its subsidiaries files income tax returns in the U.S. federal jurisdiction, in Utah, in the United Kingdom, in Australia, in Ireland and in Canada. &#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company recognizes interest accrued related to unrecognized tax benefits in interest expense and any related penalties in income taxes. The Company did not recognize any tax-related interest expense or have any tax penalties in 2019 or 2021. &#160;In 2020 the Company paid tax penalties of $4. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Legal Costs&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company has been involved in lawsuits which are an expected consequence of its operations and in the ordinary course of business. &#160;The Company maintains a reserve for legal costs which are probable and estimated based on previous experience and known risk. &#160;The reserve for legal costs at December 31, 2021 and 2020 was  $96 and $113, respectively (see note 2).&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Earnings per Share&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The computation of basic earnings per common share is based on the weighted average number of shares outstanding during each year. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The computation of earnings per common share assuming dilution is based on the weighted average number of shares outstanding during the year plus the weighted average common stock equivalents which would arise from the exercise of stock options outstanding using the treasury stock method and the average market price per share during the year.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt"&gt;The shares (in thousands) used in the computation of the Company&#x2019;s basic and diluted earnings per share are reconciled as follows:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:960.75pt" valign="top"/&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:960.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; Weighted average number of shares outstanding &#x2013;&#160;basic&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,647&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,658&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,721&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:960.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; Dilutive effect of stock options&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;18&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:960.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; Weighted average number of shares outstanding, assuming dilution&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,660&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,672&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,739&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Presentation of Sales and Similar Taxes&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Sales tax on revenue-producing transactions is recorded as a liability when the sale occurs. &#160;UTMD is not required to withhold sales tax on OUS sales, and at least 90% of domestic 2021 sales were to customers who are tax exempt or who are in jurisdictions where UTMD is not required to withhold sales tax.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt; &#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Translation of Foreign Currencies&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Assets and liabilities of the Company&#x2019;s foreign subsidiaries are translated into U.S. dollars at the applicable exchange rates at year-end. &#160;Net gains or losses resulting from the translation of the Company&#x2019;s assets and liabilities are reflected as a separate component of stockholders&#x2019; equity. &#160;A negative translation impact on stockholders&#x2019; equity reflects a current relative U.S. Dollar value higher than at the point in time that assets were actually acquired in a foreign currency. &#160;A positive translation impact would result from a U.S. dollar weaker in value than at the point in time foreign assets were acquired. &#160;Year-end translation gains or losses of non-functional currency bank account balances, e.g. EUR and AUD balances held by the UK subsidiary, are recognized as non-operating income or expense, as applicable.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Income and expense items are translated at the weighted average rate of exchange (based on when transactions actually occurred) during the year. &lt;/p&gt;
</us-gaap:SignificantAccountingPoliciesTextBlock>
    <us-gaap:UseOfEstimates contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Use of Estimates in the Preparation of Financial Statements&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&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. &#160;Although actual results could differ from those estimates, management believes it has considered and disclosed all relevant information in making its estimates that materially affect reported performance and current values.&lt;/p&gt;
</us-gaap:UseOfEstimates>
    <us-gaap:ConsolidationPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Principles of Consolidation&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The consolidated financial statements include those of the Company and its subsidiaries. &#160;All intercompany accounts and transactions have been eliminated in consolidation. &lt;/p&gt;
</us-gaap:ConsolidationPolicyTextBlock>
    <us-gaap:CashAndCashEquivalentsPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Cash and Cash Equivalents&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;For purposes of the consolidated statement of cash flows, the Company considers cash on deposit and short-term investments with original maturities of three months or less to be cash and cash equivalents.&lt;/p&gt;
</us-gaap:CashAndCashEquivalentsPolicyTextBlock>
    <us-gaap:ConcentrationRiskDisclosureTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Concentration of Credit Risk&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The primary concentration of credit risk consists of trade receivables. &#160;In the normal course of business, the Company provides credit terms to its customers. &#160;Accordingly, the Company performs ongoing credit evaluations of its customers and maintains allowances for possible losses which, when realized, have been within the range of management's expectations as reflected by its reserves. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company's customer base consists of hospitals, medical device distributors, physician practices and others directly related to healthcare providers, as well as other manufacturing companies. Although the Company is affected by the well-being of the global healthcare industry, management does not believe significant trade receivable credit risk exists at December&#160;31, 2021 except under an extreme global financial crisis.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company maintains its cash in bank deposit accounts in addition to Fidelity Investment money market accounts. &#160;The Company has not experienced any losses in such accounts and believes it is not exposed to a significant credit risk on cash and cash equivalent balances. &lt;/p&gt;
</us-gaap:ConcentrationRiskDisclosureTextBlock>
    <us-gaap:ReceivablesPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Accounts Receivable&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accounts receivable are amounts due on product sales and are unsecured. &#160;Accounts receivable are carried at their estimated collectible amounts. &#160;Credit is generally extended on a short-term basis; thus, accounts receivable do not bear interest although a late charge may be applied to such receivables that are past the due date. &#160;Accounts receivable are periodically evaluated for collectability based on past credit history of customers and current market conditions. &#160;Provisions for losses on accounts receivable are determined on the basis of loss experience, known and inherent risk in the account balance and current economic conditions (see note 2).&lt;/p&gt;
</us-gaap:ReceivablesPolicyTextBlock>
    <us-gaap:InventoryPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Inventories&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Finished products, work-in-process, raw materials and supplies inventories are stated at the lower of cost and net realizable value (NRV) computed on a first-in, first-out method. &#160;Net realizable value is the estimated selling price in the ordinary course of business, less reasonably predictable costs of completion, disposal, and transportation (see note 2). &lt;/p&gt;
</us-gaap:InventoryPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Property and Equipment&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Property and equipment are stated at cost. &#160;Depreciation and amortization are computed using the straight-line method over estimated useful lives as follows:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td colspan="2" style="width:391.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:298.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Building and improvements&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:92.7pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;15 - 40 years&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:298.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Furniture, equipment and tooling&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:92.7pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;3 - 10 years&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
</us-gaap:PropertyPlantAndEquipmentPolicyTextBlock>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="Y21_Range-Minimum_PpeByType-BuildingAndBuildingImprovements">P15Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="Y21_Range-Maximum_PpeByType-BuildingAndBuildingImprovements">P40Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="Y21_Range-Minimum_PpeByType-Equipment">P3Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:PropertyPlantAndEquipmentUsefulLife contextRef="Y21_Range-Maximum_PpeByType-Equipment">P10Y</us-gaap:PropertyPlantAndEquipmentUsefulLife>
    <us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Long-Lived Assets&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company evaluates its long-lived assets in accordance with Accounting Standards Codification (ASC) 360, &#x201c;Accounting for the Impairment of Long-Lived Assets.&#x201d; &#160;Long-lived assets held and used by the Company are reviewed for impairment whenever events or changes in circumstances indicate that their net book value may not be recoverable. &#160;When such factors and circumstances exist, the Company compares the projected undiscounted future cash flows associated with the related asset or group of assets over their estimated useful lives against their respective carrying amounts. &#160;Impairment, if any, is based on the excess of the carrying amount over the fair value of those assets and is recorded in the period in which the determination was made. &lt;/p&gt;
</us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock>
    <us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Intangible Assets&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Costs associated with the acquisition of patents, trademarks, trade names, customer relationships, regulatory approvals &amp;amp; product certifications, license rights and non-compete agreements are capitalized, and are being amortized using the straight-line method over periods ranging from 5 to 20 years. UTMD&#x2019;s goodwill is tested for impairment annually, in the fourth quarter of each year, in accordance with ASC 350. UTMD also performs impairment tests contemporaneously, if circumstances change that would more than likely reduce the fair value of goodwill below its net book value. &#160;If UTMD determines that its goodwill is impaired, a second step is completed to measure the amount of the impairment loss. UTMD does not expect its goodwill to become impaired in the foreseeable future. &#160;Estimated future amortization expenses on intangible assets held as of December 31, 2021, using the 2021 year-end 1.3536 USD/GBP and0.7268 USD/AUD currency exchange rates, is about $6,542 in 2022, $5,805 in 2023, $2,121 in 2024, $2,121 in 2025, and $463 in 2026 (see note 2).&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;In 2019, $21,000 in intangible assets were acquired from CSI. &#160;The future amortization expenses on those assets are estimated to be $4,421 per year in 2022, and $3,684 in 2023 (see note 15).&lt;/p&gt;
</us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="Y21_Range-Minimum">P5Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <us-gaap:FiniteLivedIntangibleAssetUsefulLife contextRef="Y21_Range-Maximum">P20Y</us-gaap:FiniteLivedIntangibleAssetUsefulLife>
    <fil:ForeignCurrencyExchangeRateTranslationGBPtoUSD contextRef="E21" decimals="INF" unitRef="Pure">1.3536</fil:ForeignCurrencyExchangeRateTranslationGBPtoUSD>
    <fil:ForeignCurrencyExchangeRateTranslationAUDtoUSD contextRef="E21" decimals="INF" unitRef="Pure">0.7268</fil:ForeignCurrencyExchangeRateTranslationAUDtoUSD>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths contextRef="E21" decimals="-3" unitRef="USD">6542000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo contextRef="E21" decimals="-3" unitRef="USD">5805000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree contextRef="E21" decimals="-3" unitRef="USD">2121000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearThree>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour contextRef="E21" decimals="-3" unitRef="USD">2121000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFour>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive contextRef="E21" decimals="-3" unitRef="USD">463000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearFive>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="Y19Q1_DistributionRightsAcquisition-CoopersurgicalInc"
      decimals="-3"
      unitRef="USD">21000000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths
      contextRef="E21_DistributionRightsAcquisition-CoopersurgicalInc"
      decimals="-3"
      unitRef="USD">4421000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths>
    <us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo
      contextRef="E21_DistributionRightsAcquisition-CoopersurgicalInc"
      decimals="-3"
      unitRef="USD">3684000</us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo>
    <us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Stock-Based Compensation &lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;At December 31, 2021, the Company has stock-based employee compensation plans, which are described more fully in note 8. &#160;The Company accounts for stock compensation under ASC 718, &lt;i&gt;Share-Based Payment&lt;/i&gt;. &#160;This statement requires the Company to recognize compensation cost based on the grant date fair value of options granted to employees and directors. In 2021, the Company recognized $166 in stock-based compensation cost compared to $160 in 2020 and $113 in 2019.&lt;/p&gt;
</us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="Y21" decimals="-3" unitRef="USD">166000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="Y20" decimals="-3" unitRef="USD">160000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="Y19" decimals="-3" unitRef="USD">113000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:RevenueRecognitionPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Revenue Recognition&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company recognizes revenue at the time of product shipment as UTMD meets its contractual performance obligations to the customer at the time of shipment. Revenue recognized by UTMD is based upon the consideration to which UTMD is entitled from its customers as a result of shipping a physical product, in accordance with the documented arrangements and fixed contracts in which the selling price was fixed prior to the Company&#x2019;s acceptance of an order. Revenue from service sales, which are immaterial to UTMD, is generally recognized when the service is completed and invoiced. As demonstrated by decades of experience in successful and consistent collections, there is very minor and insignificant uncertainty regarding the collectability of invoiced amounts reasonably within the terms of the Company&#x2019;s contracts. There are circumstances under which insignificant revenue may be recognized when product is not shipped, which meet the criteria of ASC 606: the Company provides engineering services, for example, design and production of manufacturing tooling that may be used in subsequent UTMD manufacturing of custom components for other companies. &#160;This revenue is recognized when UTMD&#x2019;s performance obligations have been completed according to a fixed contractual agreement. &#160;UTMD includes handling fees charged to customers in revenues. &lt;/p&gt;
</us-gaap:RevenueRecognitionPolicyTextBlock>
    <us-gaap:IncomeTaxPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Income Taxes&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company accounts for income taxes under ASC 740, &#x201c;Accounting for Income Taxes,&#x201d; whereby deferred taxes are computed under the asset and liability method. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company accounts for deferred taxes under ASC 740, &#x201c;Accounting for Income Taxes,&#x201d; which requires that all deferred income taxes are classified as noncurrent in a classified statement of financial position.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The TCJA contains a deemed repatriation transition tax (REPAT tax) on accumulated earnings and profits of the Company&#x2019;s non-U.S. subsidiaries that have not been subject to U.S. tax. &#160;The Company has elected to pay its net REPAT tax over eight years. &#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company or one of its subsidiaries files income tax returns in the U.S. federal jurisdiction, in Utah, in the United Kingdom, in Australia, in Ireland and in Canada. &#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company recognizes interest accrued related to unrecognized tax benefits in interest expense and any related penalties in income taxes. The Company did not recognize any tax-related interest expense or have any tax penalties in 2019 or 2021. &#160;In 2020 the Company paid tax penalties of $4. &lt;/p&gt;
</us-gaap:IncomeTaxPolicyTextBlock>
    <us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense contextRef="Y20" decimals="-3" unitRef="USD">4000</us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense>
    <us-gaap:LegalCostsPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Legal Costs&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company has been involved in lawsuits which are an expected consequence of its operations and in the ordinary course of business. &#160;The Company maintains a reserve for legal costs which are probable and estimated based on previous experience and known risk. &#160;The reserve for legal costs at December 31, 2021 and 2020 was  $96 and $113, respectively (see note 2).&lt;/p&gt;
</us-gaap:LegalCostsPolicyTextBlock>
    <us-gaap:LitigationReserve contextRef="E21" decimals="-3" unitRef="USD">96000</us-gaap:LitigationReserve>
    <us-gaap:LitigationReserve contextRef="E20" decimals="-3" unitRef="USD">113000</us-gaap:LitigationReserve>
    <us-gaap:EarningsPerSharePolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Earnings per Share&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The computation of basic earnings per common share is based on the weighted average number of shares outstanding during each year. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The computation of earnings per common share assuming dilution is based on the weighted average number of shares outstanding during the year plus the weighted average common stock equivalents which would arise from the exercise of stock options outstanding using the treasury stock method and the average market price per share during the year.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt"&gt;The shares (in thousands) used in the computation of the Company&#x2019;s basic and diluted earnings per share are reconciled as follows:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:960.75pt" valign="top"/&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:960.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; Weighted average number of shares outstanding &#x2013;&#160;basic&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,647&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,658&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,721&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:960.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; Dilutive effect of stock options&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;18&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:960.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; Weighted average number of shares outstanding, assuming dilution&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,660&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,672&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,739&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:EarningsPerSharePolicyTextBlock>
    <us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:960.75pt" valign="top"/&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:960.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; Weighted average number of shares outstanding &#x2013;&#160;basic&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,647&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,658&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,721&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:960.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; Dilutive effect of stock options&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:104.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;18&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:960.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; Weighted average number of shares outstanding, assuming dilution&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,660&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,672&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:69.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:104.2pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,739&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="Y21" decimals="-3" unitRef="Shares">3647000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="Y20" decimals="-3" unitRef="Shares">3658000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="Y19" decimals="-3" unitRef="Shares">3721000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="Y21" decimals="-3" unitRef="Shares">13000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="Y20" decimals="-3" unitRef="Shares">14000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="Y19" decimals="-3" unitRef="Shares">18000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="Y21" decimals="-3" unitRef="Shares">3660000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="Y20" decimals="-3" unitRef="Shares">3672000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="Y19" decimals="-3" unitRef="Shares">3739000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <fil:PresentationOfSalesAndSimilarTaxesTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Presentation of Sales and Similar Taxes&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Sales tax on revenue-producing transactions is recorded as a liability when the sale occurs. &#160;UTMD is not required to withhold sales tax on OUS sales, and at least 90% of domestic 2021 sales were to customers who are tax exempt or who are in jurisdictions where UTMD is not required to withhold sales tax.&lt;/p&gt;
</fil:PresentationOfSalesAndSimilarTaxesTextBlock>
    <us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Translation of Foreign Currencies&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Assets and liabilities of the Company&#x2019;s foreign subsidiaries are translated into U.S. dollars at the applicable exchange rates at year-end. &#160;Net gains or losses resulting from the translation of the Company&#x2019;s assets and liabilities are reflected as a separate component of stockholders&#x2019; equity. &#160;A negative translation impact on stockholders&#x2019; equity reflects a current relative U.S. Dollar value higher than at the point in time that assets were actually acquired in a foreign currency. &#160;A positive translation impact would result from a U.S. dollar weaker in value than at the point in time foreign assets were acquired. &#160;Year-end translation gains or losses of non-functional currency bank account balances, e.g. EUR and AUD balances held by the UK subsidiary, are recognized as non-operating income or expense, as applicable.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Income and expense items are translated at the weighted average rate of exchange (based on when transactions actually occurred) during the year. &lt;/p&gt;
</us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock>
    <us-gaap:SupplementalBalanceSheetDisclosuresTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 2 &#x2013;&#160;Detail of Certain Balance Sheet Accounts&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="4" style="width:343.95pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"/&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accounts and other receivables:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Accounts receivable&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,287&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,224&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Accrued interest and other&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;39&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Less allowance for doubtful accounts&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(156)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(134)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total accounts and other receivables&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,170&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,104&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
 &lt;p style="font:11pt Times New Roman;margin:0"/&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Inventories:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Finished products&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,468&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,363&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Work-in-process&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,398&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,375&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Raw materials&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,730&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,484&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total inventories&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,596&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,222&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Goodwill:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Balance as of January 1&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,164&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13,961&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Effect of foreign exchange&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(66)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;203&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Subtractions as a result of impairment&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total Goodwill as of December 31&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,098&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,164&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:11pt Times New Roman;margin:0"/&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Other identifiable intangible assets:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"/&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"/&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Patents&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,212&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,201&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Non-compete agreements&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;135&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;137&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Trademarks &amp;amp; trade names&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,930&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Customer relationships&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,678&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,769&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt; Distribution agreements&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;21,000&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;21,000&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Regulatory approvals &amp;amp; product certifications&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,910&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13,031&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total Other Identifiable Intangible Assets&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;55,865&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;56,159&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Accumulated amortization&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(38,552)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(32,166)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt; Other Identifiable Intangible Assets, Net&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;17,313&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;23,993&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
 &lt;p style="font:11pt Times New Roman;margin:0"/&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accrued expenses:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Income taxes payable&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;36&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Payroll and payroll taxes&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,225&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;946&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Reserve for litigation costs&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;96&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;113&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Other&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,627&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,941&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total accrued expenses&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,984&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,003&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:SupplementalBalanceSheetDisclosuresTextBlock>
    <us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="4" style="width:343.95pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"/&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accounts and other receivables:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Accounts receivable&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,287&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,224&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Accrued interest and other&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;39&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Less allowance for doubtful accounts&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(156)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(134)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total accounts and other receivables&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,170&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,104&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock>
    <us-gaap:AccountsReceivableGrossCurrent contextRef="E21" decimals="-3" unitRef="USD">5287000</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:AccountsReceivableGrossCurrent contextRef="E20" decimals="-3" unitRef="USD">4224000</us-gaap:AccountsReceivableGrossCurrent>
    <us-gaap:InterestReceivableAndOtherAssets contextRef="E21" decimals="-3" unitRef="USD">39000</us-gaap:InterestReceivableAndOtherAssets>
    <us-gaap:InterestReceivableAndOtherAssets contextRef="E20" decimals="-3" unitRef="USD">14000</us-gaap:InterestReceivableAndOtherAssets>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="E21" decimals="-3" unitRef="USD">156000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent contextRef="E20" decimals="-3" unitRef="USD">134000</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsAndOtherReceivablesNetCurrent contextRef="E21" decimals="-3" unitRef="USD">5170000</us-gaap:AccountsAndOtherReceivablesNetCurrent>
    <us-gaap:AccountsAndOtherReceivablesNetCurrent contextRef="E20" decimals="-3" unitRef="USD">4104000</us-gaap:AccountsAndOtherReceivablesNetCurrent>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="Y21">&lt;p style="font:11pt Times New Roman;margin:0"/&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Inventories:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;.&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Finished products&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,468&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,363&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Work-in-process&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,398&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,375&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Raw materials&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,730&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,484&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total inventories&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,596&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,222&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="E21" decimals="-3" unitRef="USD">1468000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves contextRef="E20" decimals="-3" unitRef="USD">1363000</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryWorkInProcess contextRef="E21" decimals="-3" unitRef="USD">1398000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryWorkInProcess contextRef="E20" decimals="-3" unitRef="USD">1375000</us-gaap:InventoryWorkInProcess>
    <us-gaap:InventoryRawMaterials contextRef="E21" decimals="-3" unitRef="USD">3730000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryRawMaterials contextRef="E20" decimals="-3" unitRef="USD">3484000</us-gaap:InventoryRawMaterials>
    <us-gaap:InventoryNet contextRef="E21" decimals="-3" unitRef="USD">6596000</us-gaap:InventoryNet>
    <us-gaap:InventoryNet contextRef="E20" decimals="-3" unitRef="USD">6222000</us-gaap:InventoryNet>
    <us-gaap:ScheduleOfGoodwillTextBlock contextRef="Y21">&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Goodwill:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Balance as of January 1&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,164&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13,961&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Effect of foreign exchange&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(66)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;203&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Subtractions as a result of impairment&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total Goodwill as of December 31&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,098&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,164&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfGoodwillTextBlock>
    <us-gaap:Goodwill contextRef="E20" decimals="-3" unitRef="USD">14164000</us-gaap:Goodwill>
    <us-gaap:Goodwill contextRef="E19" decimals="-3" unitRef="USD">13961000</us-gaap:Goodwill>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss contextRef="Y21" decimals="-3" unitRef="USD">-66000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillForeignCurrencyTranslationGainLoss contextRef="Y20" decimals="-3" unitRef="USD">203000</us-gaap:GoodwillForeignCurrencyTranslationGainLoss>
    <us-gaap:GoodwillImpairmentLoss contextRef="Y21" decimals="-3" unitRef="USD">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:GoodwillImpairmentLoss contextRef="Y20" decimals="-3" unitRef="USD">0</us-gaap:GoodwillImpairmentLoss>
    <us-gaap:Goodwill contextRef="E21" decimals="-3" unitRef="USD">14098000</us-gaap:Goodwill>
    <us-gaap:Goodwill contextRef="E20" decimals="-3" unitRef="USD">14164000</us-gaap:Goodwill>
    <us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock contextRef="Y21">&lt;p style="font:11pt Times New Roman;margin:0"/&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Other identifiable intangible assets:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"/&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"/&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Patents&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,212&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,201&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Non-compete agreements&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;135&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;137&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Trademarks &amp;amp; trade names&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,930&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Customer relationships&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,678&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,769&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt; Distribution agreements&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;21,000&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;21,000&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Regulatory approvals &amp;amp; product certifications&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,910&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13,031&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total Other Identifiable Intangible Assets&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;55,865&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;56,159&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Accumulated amortization&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(38,552)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(32,166)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt; Other Identifiable Intangible Assets, Net&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;17,313&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.85pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;23,993&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock>
    <us-gaap:FiniteLivedPatentsGross contextRef="E21" decimals="-3" unitRef="USD">2212000</us-gaap:FiniteLivedPatentsGross>
    <us-gaap:FiniteLivedPatentsGross contextRef="E20" decimals="-3" unitRef="USD">2201000</us-gaap:FiniteLivedPatentsGross>
    <us-gaap:FiniteLivedNoncompeteAgreementsGross contextRef="E21" decimals="-3" unitRef="USD">135000</us-gaap:FiniteLivedNoncompeteAgreementsGross>
    <us-gaap:FiniteLivedNoncompeteAgreementsGross contextRef="E20" decimals="-3" unitRef="USD">137000</us-gaap:FiniteLivedNoncompeteAgreementsGross>
    <us-gaap:FiniteLivedTrademarksGross contextRef="E21" decimals="-3" unitRef="USD">9930000</us-gaap:FiniteLivedTrademarksGross>
    <us-gaap:FiniteLivedTrademarksGross contextRef="E20" decimals="-3" unitRef="USD">10021000</us-gaap:FiniteLivedTrademarksGross>
    <us-gaap:FiniteLivedCustomerRelationshipsGross contextRef="E21" decimals="-3" unitRef="USD">9678000</us-gaap:FiniteLivedCustomerRelationshipsGross>
    <us-gaap:FiniteLivedCustomerRelationshipsGross contextRef="E20" decimals="-3" unitRef="USD">9769000</us-gaap:FiniteLivedCustomerRelationshipsGross>
    <us-gaap:OtherFiniteLivedIntangibleAssetsGross contextRef="E21" decimals="-3" unitRef="USD">21000000</us-gaap:OtherFiniteLivedIntangibleAssetsGross>
    <us-gaap:OtherFiniteLivedIntangibleAssetsGross contextRef="E20" decimals="-3" unitRef="USD">21000000</us-gaap:OtherFiniteLivedIntangibleAssetsGross>
    <fil:FiniteLivedRegulatoryApprovalsAndProductCertificationsGross contextRef="E21" decimals="-3" unitRef="USD">12910000</fil:FiniteLivedRegulatoryApprovalsAndProductCertificationsGross>
    <fil:FiniteLivedRegulatoryApprovalsAndProductCertificationsGross contextRef="E20" decimals="-3" unitRef="USD">13031000</fil:FiniteLivedRegulatoryApprovalsAndProductCertificationsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="E21" decimals="-3" unitRef="USD">55865000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsGross contextRef="E20" decimals="-3" unitRef="USD">56159000</us-gaap:FiniteLivedIntangibleAssetsGross>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="E21" decimals="-3" unitRef="USD">38552000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization contextRef="E20" decimals="-3" unitRef="USD">32166000</us-gaap:FiniteLivedIntangibleAssetsAccumulatedAmortization>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="E21" decimals="-3" unitRef="USD">17313000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:FiniteLivedIntangibleAssetsNet contextRef="E20" decimals="-3" unitRef="USD">23993000</us-gaap:FiniteLivedIntangibleAssetsNet>
    <us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock contextRef="Y21">&lt;p style="font:11pt Times New Roman;margin:0"/&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accrued expenses:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"/&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Income taxes payable&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;36&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Payroll and payroll taxes&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,225&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;946&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Reserve for litigation costs&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;96&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;113&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Other&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,627&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,941&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:1041.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:46.8pt"/&gt;Total accrued expenses&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,984&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,003&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock>
    <us-gaap:AccruedIncomeTaxesCurrent contextRef="E21" decimals="-3" unitRef="USD">36000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:AccruedIncomeTaxesCurrent contextRef="E20" decimals="-3" unitRef="USD">3000</us-gaap:AccruedIncomeTaxesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent contextRef="E21" decimals="-3" unitRef="USD">1225000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent contextRef="E20" decimals="-3" unitRef="USD">946000</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:LitigationReserveCurrent contextRef="E21" decimals="-3" unitRef="USD">96000</us-gaap:LitigationReserveCurrent>
    <us-gaap:LitigationReserveCurrent contextRef="E20" decimals="-3" unitRef="USD">113000</us-gaap:LitigationReserveCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent contextRef="E21" decimals="-3" unitRef="USD">1627000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:OtherAccruedLiabilitiesCurrent contextRef="E20" decimals="-3" unitRef="USD">1941000</us-gaap:OtherAccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="E21" decimals="-3" unitRef="USD">2984000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:AccruedLiabilitiesCurrent contextRef="E20" decimals="-3" unitRef="USD">3003000</us-gaap:AccruedLiabilitiesCurrent>
    <us-gaap:QuarterlyFinancialInformationTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 3 &#x2013;&#160;Quarterly Results of Operations (Unaudited)&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Unaudited Quarterly Data for 2021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;First Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Second Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Third Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Fourth Quarter&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Sales&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,964&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,604&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,572&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,914&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gross Profit&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,947&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,785&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;8,073&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;8,112&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Income&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,024&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,426&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,206&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,131&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings Per Common Share (Diluted)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.83&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.94&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1.15&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1.13&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Unaudited Quarterly Data for 2020&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;First Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Second Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Third Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Fourth Quarter&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Sales&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,902&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;8,787&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,479&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,010&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gross Profit&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,836&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,950&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,497&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,265&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Income&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,140&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,313&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,933&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,412&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings Per Common Share (Diluted)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.84&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.36&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.80&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.94&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Unaudited Quarterly Data for 2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;First Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Second Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Third Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Fourth Quarter&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Sales&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,732&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,846&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,494&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,831&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gross Profit&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,773&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,500&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,379&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,814&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Income&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,139&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,525&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,705&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,359&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings Per Common Share (Diluted)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.84&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.94&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.99&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1.17&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0;color:#000000"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"/&gt;
</us-gaap:QuarterlyFinancialInformationTextBlock>
    <us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Unaudited Quarterly Data for 2021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;First Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Second Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Third Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Fourth Quarter&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Sales&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,964&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,604&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,572&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,914&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gross Profit&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,947&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,785&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;8,073&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;8,112&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Income&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,024&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,426&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,206&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,131&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings Per Common Share (Diluted)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.83&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.94&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1.15&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1.13&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Unaudited Quarterly Data for 2020&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;First Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Second Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Third Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Fourth Quarter&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Sales&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,902&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;8,787&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,479&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,010&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gross Profit&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,836&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,950&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,497&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,265&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Income&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,140&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,313&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,933&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,412&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings Per Common Share (Diluted)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.84&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.36&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.80&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.94&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Unaudited Quarterly Data for 2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;First Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Second Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Third Quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Fourth Quarter&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Sales&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,732&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,846&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,494&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,831&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gross Profit&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,773&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,500&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,379&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,814&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net Income&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,139&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,525&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,705&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,359&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings Per Common Share (Diluted)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.84&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.94&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.99&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1.17&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0;color:#000000"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"/&gt;
</us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y21Q1" decimals="-3" unitRef="USD">10964000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y21Q2" decimals="-3" unitRef="USD">12604000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y21Q3" decimals="-3" unitRef="USD">12572000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y21Q4" decimals="-3" unitRef="USD">12914000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit contextRef="Y21Q1" decimals="-3" unitRef="USD">6947000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y21Q2" decimals="-3" unitRef="USD">7785000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y21Q3" decimals="-3" unitRef="USD">8073000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y21Q4" decimals="-3" unitRef="USD">8112000</us-gaap:GrossProfit>
    <us-gaap:ProfitLoss contextRef="Y21Q1" decimals="-3" unitRef="USD">3024000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y21Q2" decimals="-3" unitRef="USD">3426000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y21Q3" decimals="-3" unitRef="USD">4206000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y21Q4" decimals="-3" unitRef="USD">4131000</us-gaap:ProfitLoss>
    <us-gaap:EarningsPerShareDiluted contextRef="Y21Q1" decimals="INF" unitRef="UsdPerShare">0.83</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y21Q2" decimals="INF" unitRef="UsdPerShare">0.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y21Q3" decimals="INF" unitRef="UsdPerShare">1.15</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y21Q4" decimals="INF" unitRef="UsdPerShare">1.13</us-gaap:EarningsPerShareDiluted>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y20Q1" decimals="-3" unitRef="USD">10902000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y20Q2" decimals="-3" unitRef="USD">8787000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y20Q3" decimals="-3" unitRef="USD">10479000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y20Q4" decimals="-3" unitRef="USD">12010000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit contextRef="Y20Q1" decimals="-3" unitRef="USD">6836000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y20Q2" decimals="-3" unitRef="USD">4950000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y20Q3" decimals="-3" unitRef="USD">6497000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y20Q4" decimals="-3" unitRef="USD">7265000</us-gaap:GrossProfit>
    <us-gaap:ProfitLoss contextRef="Y20Q1" decimals="-3" unitRef="USD">3140000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y20Q2" decimals="-3" unitRef="USD">1313000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y20Q3" decimals="-3" unitRef="USD">2933000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y20Q4" decimals="-3" unitRef="USD">3412000</us-gaap:ProfitLoss>
    <us-gaap:EarningsPerShareDiluted contextRef="Y20Q1" decimals="INF" unitRef="UsdPerShare">0.84</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y20Q2" decimals="INF" unitRef="UsdPerShare">0.36</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y20Q3" decimals="INF" unitRef="UsdPerShare">0.80</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y20Q4" decimals="INF" unitRef="UsdPerShare">0.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y19Q1" decimals="-3" unitRef="USD">10732000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y19Q2" decimals="-3" unitRef="USD">11846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y19Q3" decimals="-3" unitRef="USD">12494000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y19Q4" decimals="-3" unitRef="USD">11831000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:GrossProfit contextRef="Y19Q1" decimals="-3" unitRef="USD">6773000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y19Q2" decimals="-3" unitRef="USD">7500000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y19Q3" decimals="-3" unitRef="USD">7379000</us-gaap:GrossProfit>
    <us-gaap:GrossProfit contextRef="Y19Q4" decimals="-3" unitRef="USD">7814000</us-gaap:GrossProfit>
    <us-gaap:ProfitLoss contextRef="Y19Q1" decimals="-3" unitRef="USD">3139000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y19Q2" decimals="-3" unitRef="USD">3525000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y19Q3" decimals="-3" unitRef="USD">3705000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y19Q4" decimals="-3" unitRef="USD">4359000</us-gaap:ProfitLoss>
    <us-gaap:EarningsPerShareDiluted contextRef="Y19Q1" decimals="INF" unitRef="UsdPerShare">0.84</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y19Q2" decimals="INF" unitRef="UsdPerShare">0.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y19Q3" decimals="INF" unitRef="UsdPerShare">0.99</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y19Q4" decimals="INF" unitRef="UsdPerShare">1.17</us-gaap:EarningsPerShareDiluted>
    <us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 4 &#x2013;&#160;Property and Equipment&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Property and equipment consists of the following:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="4" style="width:241.05pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"/&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Land&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,690&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,725&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Buildings and improvements&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,172&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,531&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Furniture, equipment and tooling&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,660&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,750&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; &lt;span style="-sec-ix-hidden:fact5"&gt;&lt;span style="-sec-ix-hidden:fact6"&gt;Right-of-Use&lt;/span&gt;&lt;/span&gt; Asset&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;449&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;377&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Construction-in-progress&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;898&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;527&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Total&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33,869&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33,910&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accumulated depreciation&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:97.3pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(22,802)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:99.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(22,584)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Property and equipment, net&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,067&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,326&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Included in the Company&#x2019;s consolidated balance sheet are the assets of its manufacturing and administrative facilities in Utah, Canada, England, Australia and Ireland. &#160;Property and equipment, by geographic area, are as follows:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Dutch801SWC;margin:0;text-align:center"&gt;&lt;span style="font-family:Times New Roman"&gt;December 31, 2021&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;U.S. &amp;amp; Canada&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;England &amp;amp; Australia &lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Ireland&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Land&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;621&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;678&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;391&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,690&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Buildings and improvements&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,541&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,384&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,247&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,172&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Furniture, equipment and tooling&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,608&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;752&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,300&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,660&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Right-of-Use Asset&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;411&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;38&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;449&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Construction-in-progress&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;412&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;484&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;898&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Total&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;22,593&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,816&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,460&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33,869&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accumulated depreciation&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(18,168)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(1,164)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(3,470)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(22,802)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Property and equipment, net&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,425&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,652&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,990&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,067&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.3pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Dutch801SWC;margin:0;text-align:center"&gt;&lt;span style="font-family:Times New Roman"&gt;December 31, 2020&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;U.S. &amp;amp; Canada&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;England &amp;amp; Australia &lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Ireland&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Land&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;621&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;684&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;420&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,725&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Buildings and improvements&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,523&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,443&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,565&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,531&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Furniture, equipment and tooling&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,632&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;761&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,357&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,750&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Right-of-Use Asset&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;361&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;377&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Construction-in-progress&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;36&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;491&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;527&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Total&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;22,173&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,888&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,849&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33,910&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accumulated depreciation&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(17,934)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(974)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(3,676)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(22,584)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Property and equipment, net&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,239&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,914&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,173&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,326&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
</us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock>
    <us-gaap:PropertyPlantAndEquipmentTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="4" style="width:241.05pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"/&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Land&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,690&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,725&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Buildings and improvements&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,172&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,531&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Furniture, equipment and tooling&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,660&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,750&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; &lt;span style="-sec-ix-hidden:fact5"&gt;&lt;span style="-sec-ix-hidden:fact6"&gt;Right-of-Use&lt;/span&gt;&lt;/span&gt; Asset&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;449&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;377&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Construction-in-progress&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:97.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;898&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:99.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;527&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Total&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33,869&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33,910&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accumulated depreciation&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:97.3pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(22,802)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:99.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(22,584)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:406.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Property and equipment, net&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:97.3pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,067&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:1.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:99.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,326&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:PropertyPlantAndEquipmentTextBlock>
    <us-gaap:Land contextRef="E21" decimals="-3" unitRef="USD">1690000</us-gaap:Land>
    <us-gaap:Land contextRef="E20" decimals="-3" unitRef="USD">1725000</us-gaap:Land>
    <us-gaap:BuildingsAndImprovementsGross contextRef="E21" decimals="-3" unitRef="USD">14172000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross contextRef="E20" decimals="-3" unitRef="USD">14531000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="E21" decimals="-3" unitRef="USD">16660000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="E20" decimals="-3" unitRef="USD">16750000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="E21" decimals="-3" unitRef="USD">449000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="E20" decimals="-3" unitRef="USD">377000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:ConstructionInProgressGross contextRef="E21" decimals="-3" unitRef="USD">898000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross contextRef="E20" decimals="-3" unitRef="USD">527000</us-gaap:ConstructionInProgressGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="E21" decimals="-3" unitRef="USD">33869000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="E20" decimals="-3" unitRef="USD">33910000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="E21" decimals="-3" unitRef="USD">22802000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="E20" decimals="-3" unitRef="USD">22584000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E21" decimals="-3" unitRef="USD">11067000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E20" decimals="-3" unitRef="USD">11326000</us-gaap:PropertyPlantAndEquipmentNet>
    <fil:PropertyPlantAndEquipmentByLocationTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.35pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Dutch801SWC;margin:0;text-align:center"&gt;&lt;span style="font-family:Times New Roman"&gt;December 31, 2021&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;U.S. &amp;amp; Canada&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;England &amp;amp; Australia &lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Ireland&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Land&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;621&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;678&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;391&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,690&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Buildings and improvements&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,541&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,384&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,247&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,172&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Furniture, equipment and tooling&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,608&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;752&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,300&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,660&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Right-of-Use Asset&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;411&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;38&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;449&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Construction-in-progress&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;412&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;484&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;898&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Total&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;22,593&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,816&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,460&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33,869&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accumulated depreciation&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(18,168)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(1,164)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(3,470)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(22,802)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Property and equipment, net&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,425&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,652&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,990&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.65pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,067&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="10" style="width:832.3pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Dutch801SWC;margin:0;text-align:center"&gt;&lt;span style="font-family:Times New Roman"&gt;December 31, 2020&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"/&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;U.S. &amp;amp; Canada&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;England &amp;amp; Australia &lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Ireland&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Land&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;621&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;684&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;420&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,725&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Buildings and improvements&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,523&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,443&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,565&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,531&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Furniture, equipment and tooling&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,632&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;761&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,357&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,750&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Right-of-Use Asset&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;361&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;377&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Construction-in-progress&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;36&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;491&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;527&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;kbd style="margin-left:19.8pt"/&gt;Total&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;22,173&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,888&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,849&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33,910&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accumulated depreciation&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(17,934)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(974)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(3,676)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:148.6pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(22,584)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:520.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Property and equipment, net&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:30.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,239&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,914&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,173&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:49.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:29.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:148.6pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,326&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
</fil:PropertyPlantAndEquipmentByLocationTextBlock>
    <us-gaap:Land
      contextRef="E21_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">621000</us-gaap:Land>
    <us-gaap:Land
      contextRef="E21_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">678000</us-gaap:Land>
    <us-gaap:Land contextRef="E21_StGeo-IE" decimals="-3" unitRef="USD">391000</us-gaap:Land>
    <us-gaap:Land contextRef="E21" decimals="-3" unitRef="USD">1690000</us-gaap:Land>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="E21_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">6541000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="E21_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">3384000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross contextRef="E21_StGeo-IE" decimals="-3" unitRef="USD">4247000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross contextRef="E21" decimals="-3" unitRef="USD">14172000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="E21_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">14608000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="E21_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">752000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="E21_StGeo-IE" decimals="-3" unitRef="USD">1300000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="E21" decimals="-3" unitRef="USD">16660000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="E21_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">411000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="E21_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">0</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="E21_StGeo-IE" decimals="-3" unitRef="USD">38000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="E21" decimals="-3" unitRef="USD">449000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:ConstructionInProgressGross
      contextRef="E21_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">412000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="E21_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">2000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross contextRef="E21_StGeo-IE" decimals="-3" unitRef="USD">484000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross contextRef="E21" decimals="-3" unitRef="USD">898000</us-gaap:ConstructionInProgressGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="E21_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">22593000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="E21_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">4816000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="E21_StGeo-IE" decimals="-3" unitRef="USD">6460000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="E21" decimals="-3" unitRef="USD">33869000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="E21_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">18168000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="E21_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">1164000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="E21_StGeo-IE" decimals="-3" unitRef="USD">3470000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="E21" decimals="-3" unitRef="USD">22802000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E21_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">4425000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E21_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">3652000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E21_StGeo-IE" decimals="-3" unitRef="USD">2990000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E21" decimals="-3" unitRef="USD">11067000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:Land
      contextRef="E20_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">621000</us-gaap:Land>
    <us-gaap:Land
      contextRef="E20_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">684000</us-gaap:Land>
    <us-gaap:Land contextRef="E20_StGeo-IE" decimals="-3" unitRef="USD">420000</us-gaap:Land>
    <us-gaap:Land contextRef="E20" decimals="-3" unitRef="USD">1725000</us-gaap:Land>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="E20_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">6523000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross
      contextRef="E20_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">3443000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross contextRef="E20_StGeo-IE" decimals="-3" unitRef="USD">4565000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:BuildingsAndImprovementsGross contextRef="E20" decimals="-3" unitRef="USD">14531000</us-gaap:BuildingsAndImprovementsGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="E20_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">14632000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross
      contextRef="E20_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">761000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="E20_StGeo-IE" decimals="-3" unitRef="USD">1357000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:MachineryAndEquipmentGross contextRef="E20" decimals="-3" unitRef="USD">16750000</us-gaap:MachineryAndEquipmentGross>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="E20_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">361000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="E20_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">0</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="E20_StGeo-IE" decimals="-3" unitRef="USD">16000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="E20" decimals="-3" unitRef="USD">377000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:ConstructionInProgressGross
      contextRef="E20_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">36000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross
      contextRef="E20_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">0</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross contextRef="E20_StGeo-IE" decimals="-3" unitRef="USD">491000</us-gaap:ConstructionInProgressGross>
    <us-gaap:ConstructionInProgressGross contextRef="E20" decimals="-3" unitRef="USD">527000</us-gaap:ConstructionInProgressGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="E20_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">22173000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross
      contextRef="E20_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">4888000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="E20_StGeo-IE" decimals="-3" unitRef="USD">6849000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:PropertyPlantAndEquipmentGross contextRef="E20" decimals="-3" unitRef="USD">33910000</us-gaap:PropertyPlantAndEquipmentGross>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="E20_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">17934000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment
      contextRef="E20_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">974000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="E20_StGeo-IE" decimals="-3" unitRef="USD">3676000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment contextRef="E20" decimals="-3" unitRef="USD">22584000</us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E20_StGeo-U.S.AndCanada"
      decimals="-3"
      unitRef="USD">4239000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="E20_StGeo-EnglandAndAustralia"
      decimals="-3"
      unitRef="USD">3914000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E20_StGeo-IE" decimals="-3" unitRef="USD">3173000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet contextRef="E20" decimals="-3" unitRef="USD">11326000</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:LongTermDebtTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 5 &#x2013;&#160;Long-term Debt&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;None in 2020 and 2021.&lt;/p&gt;
</us-gaap:LongTermDebtTextBlock>
    <us-gaap:LongTermDebt contextRef="E21" decimals="INF" unitRef="USD">0</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt contextRef="E20" decimals="INF" unitRef="USD">0</us-gaap:LongTermDebt>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 6 &#x2013;&#160;Commitments and Contingencies&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Purchase Obligations&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company has obligations to purchase raw materials for use in its manufacturing operations. &#160;The Company has the right to make changes in, among other things, purchase quantities, delivery schedules and order acceptance.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Product Liability&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company is self-insured for product liability risk. &#x201c;Product liability&#x201d; is an insurance industry term for the cost of legal defense and possible damages awarded as a result of use of a company&#x2019;s product during a procedure which results in an injury of a patient. &#160;The Company maintains a reserve for product liability litigation and damages consistent with its previous long-term experience. &#160;Actual product liability litigation costs and damages during the last three reporting years have been immaterial, which is consistent with the Company&#x2019;s overall history. &#160;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company absorbs the costs of clinical training and trouble-shooting in its on-going operating expenses.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Warranty Reserve&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company&#x2019;s published warranty is: &#x201c;UTMD warrants its products to conform in all material respects to all published product specifications in effect on the date of shipment, and to be free from defects in material and workmanship for a period of thirty (30) days for supplies, or twenty-four (24) months for equipment, from date of shipment. &#160;During the warranty period UTMD shall, at its option, replace any products shown to UTMD's reasonable satisfaction to be defective at no expense to the Purchaser or refund the purchase price.&#x201d; &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;UTMD maintains a warranty reserve to provide for estimated costs which are likely to occur. The amount of this reserve is adjusted, as required, to reflect its actual experience. Based on its analysis of historical warranty claims and its estimate that existing warranty obligations are immaterial, no warranty reserve was made at December 31, 2021 or December 31, 2020. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Litigation&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company has been involved in lawsuits which are an expected consequence of its operations and in the ordinary course of business. &#160;Presently, there is no litigation or threatened litigation for which the Company believes the outcome may be material to its financial results. &#160;The Company applies its accounting policy to accrue legal costs that can be reasonably estimated. &lt;/p&gt;
</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:ProductWarrantyAccrual contextRef="E21" decimals="INF" unitRef="USD">0</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual contextRef="E20" decimals="INF" unitRef="USD">0</us-gaap:ProductWarrantyAccrual>
    <us-gaap:IncomeTaxDisclosureTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 7 &#x2013;&#160;Income Taxes &#160;&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Deferred tax assets (liabilities) consist of the following temporary differences:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:99.98%"&gt;&lt;tr&gt;&lt;td style="width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:588.95pt;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.65pt" valign="top"/&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Inventory write-downs and differences due to UNICAP&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;88&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;86&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;84&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Allowance for doubtful accounts&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;31&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;32&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accrued liabilities and reserves&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;58&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;68&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;55&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Depreciation and amortization&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,925)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(3,034)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,933)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Deferred income taxes, net&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,748)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,848)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,761)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The components of income tax expense are as follows:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Years ended December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"/&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Current&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,983&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,253&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,467&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Deferred&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;290&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(211)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(310)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,273&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,042&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,157&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Income tax expense differed from amounts computed by applying the statutory federal rate to pretax income as follows:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Years ended December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"/&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Federal income tax expense at the statutory rate&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,520&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,915&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,512&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;State income taxes&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;448&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;369&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(124)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Foreign income taxes (blended rate)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,010&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;550&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;985&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;ETI, manufacturing deduction and tax credits&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(6)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(7)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(9)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Deemed repatriation transition tax &lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;color:#FF0000;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;263&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(266)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;US Taxes on foreign income&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(99)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(35)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;59&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Change in Rate&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;391&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Other&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(13)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,273&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,042&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,157&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The domestic and foreign components of income before income tax expense were as follows: &#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Years ended December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"/&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Domestic&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,004&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,031&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,549&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Foreign&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,057&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,809&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,335&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,061&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13,840&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;17,884&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:IncomeTaxDisclosureTextBlock>
    <us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:99.98%"&gt;&lt;tr&gt;&lt;td style="width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:588.95pt;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.65pt" valign="top"/&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Inventory write-downs and differences due to UNICAP&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;88&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;86&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;84&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Allowance for doubtful accounts&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;31&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;32&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Accrued liabilities and reserves&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;58&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;68&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;55&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Depreciation and amortization&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,925)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(3,034)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.25pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,933)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Deferred income taxes, net&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,748)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,848)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(2,761)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock>
    <us-gaap:DeferredTaxAssetsInventory contextRef="E21" decimals="-3" unitRef="USD">88000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsInventory contextRef="E20" decimals="-3" unitRef="USD">86000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsInventory contextRef="E19" decimals="-3" unitRef="USD">84000</us-gaap:DeferredTaxAssetsInventory>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts contextRef="E21" decimals="-3" unitRef="USD">31000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts contextRef="E20" decimals="-3" unitRef="USD">32000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts contextRef="E19" decimals="-3" unitRef="USD">33000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities contextRef="E21" decimals="-3" unitRef="USD">58000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities contextRef="E20" decimals="-3" unitRef="USD">68000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities contextRef="E19" decimals="-3" unitRef="USD">55000</us-gaap:DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities>
    <fil:DeferredTaxLiabilitiesDepreciationAndAmortization contextRef="E21" decimals="-3" unitRef="USD">2925000</fil:DeferredTaxLiabilitiesDepreciationAndAmortization>
    <fil:DeferredTaxLiabilitiesDepreciationAndAmortization contextRef="E20" decimals="-3" unitRef="USD">3034000</fil:DeferredTaxLiabilitiesDepreciationAndAmortization>
    <fil:DeferredTaxLiabilitiesDepreciationAndAmortization contextRef="E19" decimals="-3" unitRef="USD">2933000</fil:DeferredTaxLiabilitiesDepreciationAndAmortization>
    <us-gaap:DeferredTaxLiabilities contextRef="E21" decimals="-3" unitRef="USD">2748000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities contextRef="E20" decimals="-3" unitRef="USD">2848000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:DeferredTaxLiabilities contextRef="E19" decimals="-3" unitRef="USD">2761000</us-gaap:DeferredTaxLiabilities>
    <us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Years ended December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"/&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Current&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,983&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,253&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,467&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Deferred&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;290&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(211)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(310)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,273&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,042&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,157&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock>
    <us-gaap:CurrentIncomeTaxExpenseBenefit contextRef="Y21" decimals="-3" unitRef="USD">3983000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit contextRef="Y20" decimals="-3" unitRef="USD">3253000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <us-gaap:CurrentIncomeTaxExpenseBenefit contextRef="Y19" decimals="-3" unitRef="USD">3467000</us-gaap:CurrentIncomeTaxExpenseBenefit>
    <fil:DeferredIncomeTaxExpense contextRef="Y21" decimals="-3" unitRef="USD">290000</fil:DeferredIncomeTaxExpense>
    <fil:DeferredIncomeTaxExpense contextRef="Y20" decimals="-3" unitRef="USD">-211000</fil:DeferredIncomeTaxExpense>
    <fil:DeferredIncomeTaxExpense contextRef="Y19" decimals="-3" unitRef="USD">-310000</fil:DeferredIncomeTaxExpense>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y21" decimals="-3" unitRef="USD">4273000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y20" decimals="-3" unitRef="USD">3042000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y19" decimals="-3" unitRef="USD">3157000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Years ended December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"/&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Federal income tax expense at the statutory rate&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,520&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,915&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,512&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;State income taxes&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;448&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;369&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(124)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Foreign income taxes (blended rate)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,010&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;550&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;985&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;ETI, manufacturing deduction and tax credits&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(6)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(7)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(9)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Deemed repatriation transition tax &lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;color:#FF0000;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;263&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(266)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;US Taxes on foreign income&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(99)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(35)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;59&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Change in Rate&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;391&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Other&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(13)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,273&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,042&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,157&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate contextRef="Y21" decimals="-3" unitRef="USD">2520000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate contextRef="Y20" decimals="-3" unitRef="USD">1915000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate contextRef="Y19" decimals="-3" unitRef="USD">2512000</us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes contextRef="Y21" decimals="-3" unitRef="USD">448000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes contextRef="Y20" decimals="-3" unitRef="USD">369000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes contextRef="Y19" decimals="-3" unitRef="USD">-124000</us-gaap:IncomeTaxReconciliationStateAndLocalIncomeTaxes>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential contextRef="Y21" decimals="-3" unitRef="USD">1010000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential contextRef="Y20" decimals="-3" unitRef="USD">550000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential contextRef="Y19" decimals="-3" unitRef="USD">985000</us-gaap:IncomeTaxReconciliationForeignIncomeTaxRateDifferential>
    <us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities contextRef="Y21" decimals="-3" unitRef="USD">6000</us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities>
    <us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities contextRef="Y20" decimals="-3" unitRef="USD">7000</us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities>
    <us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities contextRef="Y19" decimals="-3" unitRef="USD">9000</us-gaap:IncomeTaxReconciliationDeductionsQualifiedProductionActivities>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount contextRef="Y21" decimals="-3" unitRef="USD">0</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount contextRef="Y20" decimals="-3" unitRef="USD">263000</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount>
    <us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount contextRef="Y19" decimals="-3" unitRef="USD">-266000</us-gaap:EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount>
    <fil:TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense contextRef="Y21" decimals="-3" unitRef="USD">-99000</fil:TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense>
    <fil:TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense contextRef="Y20" decimals="-3" unitRef="USD">-35000</fil:TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense>
    <fil:TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense contextRef="Y19" decimals="-3" unitRef="USD">59000</fil:TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense>
    <fil:AdjustmentToDeferredTaxLiability contextRef="Y21" decimals="-3" unitRef="USD">-391000</fil:AdjustmentToDeferredTaxLiability>
    <fil:AdjustmentToDeferredTaxLiability contextRef="Y20" decimals="-3" unitRef="USD">0</fil:AdjustmentToDeferredTaxLiability>
    <fil:AdjustmentToDeferredTaxLiability contextRef="Y19" decimals="-3" unitRef="USD">0</fil:AdjustmentToDeferredTaxLiability>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments contextRef="Y21" decimals="-3" unitRef="USD">9000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments contextRef="Y20" decimals="-3" unitRef="USD">-13000</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxReconciliationOtherAdjustments contextRef="Y19" decimals="-3" unitRef="USD">0</us-gaap:IncomeTaxReconciliationOtherAdjustments>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y21" decimals="-3" unitRef="USD">4273000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y20" decimals="-3" unitRef="USD">3042000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit contextRef="Y19" decimals="-3" unitRef="USD">3157000</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:589.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Years ended December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"/&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Domestic&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;12,004&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,031&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,549&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Foreign&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,057&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,809&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:102.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,335&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,061&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13,840&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:113.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:102.35pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;17,884&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic contextRef="Y21" decimals="-3" unitRef="USD">12004000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic contextRef="Y20" decimals="-3" unitRef="USD">9031000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic contextRef="Y19" decimals="-3" unitRef="USD">11549000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign contextRef="Y21" decimals="-3" unitRef="USD">7057000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign contextRef="Y20" decimals="-3" unitRef="USD">4809000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign contextRef="Y19" decimals="-3" unitRef="USD">6335000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="Y21" decimals="-3" unitRef="USD">19061000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="Y20" decimals="-3" unitRef="USD">13840000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest contextRef="Y19" decimals="-3" unitRef="USD">17884000</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 8 &#x2013;&#160;Options&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company has stock option plans which authorize the grant of stock options to eligible employees, directors and other individuals to purchase up to an aggregate of &#160;461 thousand shares of common stock, of which 52 thousand are outstanding as of December 31, 2020. &#160;All options granted under the plans are granted at current market value at the date of grant, and may be exercised between six months and ten years following the date of grant. &#160;The plans are intended to advance the interest of the Company by attracting and ensuring retention of competent directors, employees and executive personnel, and to provide incentives to those individuals to devote their utmost efforts to the advancement of stockholder value. &#160;Changes in stock options were as follows:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"/&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Shares&lt;br/&gt;(000&#x2019;s)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="width:346.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Price Range &lt;br/&gt;Per Share&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;2021&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Granted&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;- - -&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expired or canceled&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;3&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;74.64 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Exercised&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;14&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total outstanding at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;52&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;33.30 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total exercisable at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;34&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;33.30 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Shares&lt;br/&gt;(000&#x2019;s)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Price Range &lt;br/&gt;Per Share&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;2020&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Granted&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;77.05 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expired or canceled&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;1&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;58.50 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Exercised&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;8&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total outstanding at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;69&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total exercisable at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;33&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.45pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Shares&lt;br/&gt;(000&#x2019;s)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346.3pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Price Range &lt;br/&gt;Per Share&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.45pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:346.3pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Granted&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;- - -&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expired or canceled&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;58.50 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Exercised&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;7&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;24.00 - 58.50&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total outstanding at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;52&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total exercisable at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;33&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;For the years ended December&#160;31, 2021, 2020 and 2019, the Company reduced current income taxes payable by $39, $7 and $23, respectively, for the income tax benefit attributable to sale by optionees of common stock received upon the exercise of stock options.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Stock-Based Compensation&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;In 2021, the Company recognized $166 in equity compensation cost, compared to $160 in 2020 and $113 in 2019. &#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The fair value of each option grant is estimated on the date of grant using the Black-Scholes option pricing model with the following weighted average assumptions:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:610.3pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Years ended December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:139.5pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:124pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:136.15pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expected dividend amount per quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:139.5pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:124pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.2943&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:136.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expected stock price volatility&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:139.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:124pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;27.5%&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:136.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Risk-free interest rate&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:139.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:124pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.56%&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:136.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expected life of options&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:139.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:124pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5.3 years&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:136.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The per share weighted average fair value of options granted during 2020 is $16.17. No options were granted in 2021 or 2019.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:6pt"&gt;All UTMD options vest over a four-year service period. &#160;At December 31, 2021 there was $286 total unrecognized compensation expense related to non-vested stock options under the plans. A $172 portion of the cost is expected to be recognized over the next twelve months, and the remaining $114 recognized over the next 2 years. Expected dividend amounts were estimated based on the actual cash dividend rate at the time the options were granted and an estimate of future dividends based on past dividend rate changes as well as management&#x2019;s expectations of future dividend rates over the expected holding period of the options. &#160;Expected volatility is based on UTMD&#x2019;s historical volatility over recent periods of time and trends in that volatility, giving weight to more recent periods. &#160;Risk free interest rates were estimated based on actual U.S. Treasury Securities Interest rates as reported by the Federal Reserve Bank for periods of time equivalent to the holding periods estimated for the options on the dates the options were granted. &#160;Expected term of options were estimated based on historical holding periods for similar options previously granted by UTMD to employees and directors. &#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The following table summarizes information about stock options outstanding at December 31, 2021:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="3" style="width:210.4pt" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="6" style="width:590.4pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Options Outstanding&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="4" style="width:385.9pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Options Exercisable&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="3" style="width:210.4pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Range of Exercise Prices&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Number Outstanding&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:47.4pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Weighted Average Remaining Contractual Life (Years)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Weighted Average Exercise Price&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Number Exercisable&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Weighted Average Exercise Price&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="3" style="width:210.4pt" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt; &#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:47.4pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:83.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33.30&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:85.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;58.50&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;15,024&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:47.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3.44 &lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;52.37&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;15,024&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;52.37&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:83.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;74.64&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:85.25pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;77.05&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;36,834&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:47.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7.74&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;76.12&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,263&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;75.82&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:83.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33.30&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;color:#7F7F7F;text-align:center"&gt;&lt;span style="color:#000000"&gt;-&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:85.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;color:#7F7F7F"&gt;&lt;span style="color:#000000"&gt;77.05&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;51,858&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:47.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6.49&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;69.24&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;34,287&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;65.55&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:601.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:473.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:601.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:108.25pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:55.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:96.2pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:67.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:105.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:601.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Intrinsic Value of Stock Options Exercised&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:108.25pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;591&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:55.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:96.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;371&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:67.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:105.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;354&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:601.55pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Intrinsic Value of Stock Options Outstanding&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:108.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,595&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:55.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:96.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,178&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:67.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:20.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:105.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,553&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized contextRef="E21" decimals="-3" unitRef="Shares">461000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="E21" decimals="-3" unitRef="Shares">52000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"/&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Shares&lt;br/&gt;(000&#x2019;s)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="width:346.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Price Range &lt;br/&gt;Per Share&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;2021&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Granted&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;- - -&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expired or canceled&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;3&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;74.64 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Exercised&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;14&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total outstanding at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;52&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;33.30 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.9pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total exercisable at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;34&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="2" style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;33.30 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Shares&lt;br/&gt;(000&#x2019;s)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Price Range &lt;br/&gt;Per Share&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;2020&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Granted&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;77.05 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expired or canceled&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;1&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;58.50 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Exercised&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;8&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total outstanding at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;69&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 77.05&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total exercisable at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;33&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:345.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.45pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Shares&lt;br/&gt;(000&#x2019;s)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346.3pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Price Range &lt;br/&gt;Per Share&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;2019&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.45pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:346.3pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Granted&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;- - -&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expired or canceled&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;58.50 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Exercised&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;7&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;24.00 - 58.50&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total outstanding at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;52&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:795.7pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total exercisable at December 31&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:114.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;33&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:27.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:346.3pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;26.52 - 74.64&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod contextRef="Y21" decimals="-3" unitRef="Shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <fil:PriceRangePerShareGranted contextRef="Y21">- - -</fil:PriceRangePerShareGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod contextRef="Y21" decimals="-3" unitRef="Shares">3000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
    <fil:PriceRangePerShareExpired contextRef="Y21">74.64 - 77.05</fil:PriceRangePerShareExpired>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Y21_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">14000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <fil:PriceRangePerShareExercised contextRef="Y21">26.52 - 77.05</fil:PriceRangePerShareExercised>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="E21" decimals="-3" unitRef="Shares">52000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <fil:PriceRangePerShareOutstanding contextRef="Y21">33.30 - 77.05</fil:PriceRangePerShareOutstanding>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="E21" decimals="-3" unitRef="Shares">34000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <fil:PriceRangePerShareTotalExercisable contextRef="Y21">33.30 - 77.05</fil:PriceRangePerShareTotalExercisable>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod contextRef="Y20" decimals="-3" unitRef="Shares">26000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <fil:PriceRangePerShareGranted contextRef="Y20">77.05 - 77.05</fil:PriceRangePerShareGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod contextRef="Y20" decimals="-3" unitRef="Shares">1000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
    <fil:PriceRangePerShareExpired contextRef="Y20">58.50 - 77.05</fil:PriceRangePerShareExpired>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Y20_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">8000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <fil:PriceRangePerShareExercised contextRef="Y20">26.52 - 74.64</fil:PriceRangePerShareExercised>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="E20" decimals="-3" unitRef="Shares">69000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <fil:PriceRangePerShareOutstanding contextRef="Y20">26.52 - 77.05</fil:PriceRangePerShareOutstanding>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="E20" decimals="-3" unitRef="Shares">33000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <fil:PriceRangePerShareTotalExercisable contextRef="Y20">26.52 - 74.64</fil:PriceRangePerShareTotalExercisable>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod contextRef="Y19" decimals="-3" unitRef="Shares">0</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod>
    <fil:PriceRangePerShareGranted contextRef="Y19">- - -</fil:PriceRangePerShareGranted>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod contextRef="Y19" decimals="-3" unitRef="Shares">2000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod>
    <fil:PriceRangePerShareExpired contextRef="Y19">58.50 - 74.64</fil:PriceRangePerShareExpired>
    <us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised
      contextRef="Y19_StEqComps-CommonStock"
      decimals="-3"
      unitRef="Shares">7000</us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised>
    <fil:PriceRangePerShareExercised contextRef="Y19">24.00 - 58.50</fil:PriceRangePerShareExercised>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber contextRef="E19" decimals="-3" unitRef="Shares">52000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber>
    <fil:PriceRangePerShareOutstanding contextRef="Y19">26.52 - 74.64</fil:PriceRangePerShareOutstanding>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber contextRef="E19" decimals="-3" unitRef="Shares">33000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber>
    <fil:PriceRangePerShareTotalExercisable contextRef="Y19">26.52 - 74.64</fil:PriceRangePerShareTotalExercisable>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions contextRef="Y21" decimals="-3" unitRef="USD">39000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions contextRef="Y20" decimals="-3" unitRef="USD">7000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions contextRef="Y19" decimals="-3" unitRef="USD">23000</us-gaap:EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="Y21" decimals="-3" unitRef="USD">166000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="Y20" decimals="-3" unitRef="USD">160000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense contextRef="Y19" decimals="-3" unitRef="USD">113000</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="7" style="width:610.3pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Years ended December 31,&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:139.5pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:124pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:136.15pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expected dividend amount per quarter&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:139.5pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:124pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.2943&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:136.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expected stock price volatility&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:139.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:124pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;27.5%&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:136.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Risk-free interest rate&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:139.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:124pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;0.56%&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:136.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:775.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Expected life of options&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:139.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:70.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:124pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5.3 years&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:86.5pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.6pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:136.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments contextRef="Y20" decimals="INF" unitRef="USD">0.2943</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate contextRef="Y20" decimals="INF" unitRef="Pure">0.275</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate contextRef="Y20" decimals="INF" unitRef="Pure">0.0056</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate>
    <us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1 contextRef="Y20">P5Y3M18D</us-gaap:SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue contextRef="Y20" decimals="INF" unitRef="UsdPerShare">16.17</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized contextRef="E21" decimals="-3" unitRef="USD">286000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths contextRef="E21" decimals="-3" unitRef="USD">172000</fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths>
    <fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition contextRef="Y21">P12M</fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition>
    <fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears contextRef="E21" decimals="-3" unitRef="USD">114000</fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears>
    <fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition contextRef="Y21">P2Y</fil:EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition>
    <us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="3" style="width:210.4pt" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="6" style="width:590.4pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Options Outstanding&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="4" style="width:385.9pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Options Exercisable&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="3" style="width:210.4pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Range of Exercise Prices&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Number Outstanding&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:47.4pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Weighted Average Remaining Contractual Life (Years)&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Weighted Average Exercise Price&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Number Exercisable&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;Weighted Average Exercise Price&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td colspan="3" style="width:210.4pt" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt; &#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:47.4pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-top:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:83.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33.30&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:85.25pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;58.50&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;15,024&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:47.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3.44 &lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;52.37&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;15,024&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;52.37&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:83.05pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;74.64&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:42.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;-&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:85.25pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;77.05&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;36,834&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:47.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7.74&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;76.12&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,263&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:157.1pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;75.82&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:28.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:83.05pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;33.30&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:42.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;color:#7F7F7F;text-align:center"&gt;&lt;span style="color:#000000"&gt;-&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:85.25pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;color:#7F7F7F"&gt;&lt;span style="color:#000000"&gt;77.05&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:98.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;51,858&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:47.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6.49&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;69.24&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;34,287&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:44.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:26.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:157.1pt;border-top:0.5pt solid #000000;border-bottom:3px double #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;65.55&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="Y21_StScenario-Range1"
      decimals="INF"
      unitRef="UsdPerShare">33.30</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="Y21_StScenario-Range1"
      decimals="INF"
      unitRef="UsdPerShare">58.50</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="E21_StScenario-Range1"
      decimals="INF"
      unitRef="Shares">15024</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <fil:WeightedAverageRemainingContractualLifeYears
      contextRef="E21_StScenario-Range1"
      decimals="INF"
      unitRef="Pure">3.44</fil:WeightedAverageRemainingContractualLifeYears>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="E21_StScenario-Range1"
      decimals="INF"
      unitRef="UsdPerShare">52.37</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="E21_StScenario-Range1"
      decimals="INF"
      unitRef="Shares">15024</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="E21_StScenario-Range1"
      decimals="INF"
      unitRef="UsdPerShare">52.37</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit
      contextRef="Y21_StScenario-Range2"
      decimals="INF"
      unitRef="UsdPerShare">74.64</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit
      contextRef="Y21_StScenario-Range2"
      decimals="INF"
      unitRef="UsdPerShare">77.05</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions
      contextRef="E21_StScenario-Range2"
      decimals="INF"
      unitRef="Shares">36834</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <fil:WeightedAverageRemainingContractualLifeYears
      contextRef="E21_StScenario-Range2"
      decimals="INF"
      unitRef="Pure">7.74</fil:WeightedAverageRemainingContractualLifeYears>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1
      contextRef="E21_StScenario-Range2"
      decimals="INF"
      unitRef="UsdPerShare">76.12</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions
      contextRef="E21_StScenario-Range2"
      decimals="INF"
      unitRef="Shares">19263</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1
      contextRef="E21_StScenario-Range2"
      decimals="INF"
      unitRef="UsdPerShare">75.82</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit contextRef="Y21" decimals="INF" unitRef="UsdPerShare">33.30</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit contextRef="Y21" decimals="INF" unitRef="UsdPerShare">77.05</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions contextRef="E21" decimals="INF" unitRef="Shares">51858</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions>
    <fil:WeightedAverageRemainingContractualLifeYears contextRef="E21" decimals="INF" unitRef="Pure">6.49</fil:WeightedAverageRemainingContractualLifeYears>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1 contextRef="E21" decimals="INF" unitRef="UsdPerShare">69.24</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1>
    <us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions contextRef="E21" decimals="INF" unitRef="Shares">34287</us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions>
    <us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1 contextRef="E21" decimals="INF" unitRef="UsdPerShare">65.55</us-gaap:SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="Y21" decimals="-3" unitRef="USD">591000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="Y20" decimals="-3" unitRef="USD">371000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue contextRef="Y19" decimals="-3" unitRef="USD">354000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="E21" decimals="-3" unitRef="USD">1595000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="E20" decimals="-3" unitRef="USD">1178000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue contextRef="E19" decimals="-3" unitRef="USD">2553000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue>
    <fil:GeographicInformationTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 9 &#x2013;&#160;Geographic Information&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company had sales in the following geographic areas based on the customer&#x2019;s country of domicile:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:560.1pt" valign="top"/&gt;&lt;td style="width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;United States&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;30,659&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;25,866&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;27,493&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Europe&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,434&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,399&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;8,906&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Other&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,961&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,913&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,505&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</fil:GeographicInformationTextBlock>
    <fil:ScheduleOfGeographicInformationTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:560.1pt" valign="top"/&gt;&lt;td style="width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;United States&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;30,659&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;25,866&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;27,493&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Europe&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;7,434&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,399&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;8,906&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Other&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,961&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,913&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,505&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</fil:ScheduleOfGeographicInformationTextBlock>
    <fil:CompanySalesInTheUnitedStates contextRef="Y21" decimals="-3" unitRef="USD">30659000</fil:CompanySalesInTheUnitedStates>
    <fil:CompanySalesInTheUnitedStates contextRef="Y20" decimals="-3" unitRef="USD">25866000</fil:CompanySalesInTheUnitedStates>
    <fil:CompanySalesInTheUnitedStates contextRef="Y19" decimals="-3" unitRef="USD">27493000</fil:CompanySalesInTheUnitedStates>
    <fil:CompanySalesInEurope contextRef="Y21" decimals="-3" unitRef="USD">7434000</fil:CompanySalesInEurope>
    <fil:CompanySalesInEurope contextRef="Y20" decimals="-3" unitRef="USD">6399000</fil:CompanySalesInEurope>
    <fil:CompanySalesInEurope contextRef="Y19" decimals="-3" unitRef="USD">8906000</fil:CompanySalesInEurope>
    <fil:CompanySalesOther contextRef="Y21" decimals="-3" unitRef="USD">10961000</fil:CompanySalesOther>
    <fil:CompanySalesOther contextRef="Y20" decimals="-3" unitRef="USD">9913000</fil:CompanySalesOther>
    <fil:CompanySalesOther contextRef="Y19" decimals="-3" unitRef="USD">10505000</fil:CompanySalesOther>
    <fil:GeographicLongLivedAssetsInformationTextBlock contextRef="Y21">&lt;span style="border-bottom:1px solid #000000"&gt;Note 10 &#x2013;&#160;Long-lived Assets by Geographic Area&lt;/span&gt; &#160; &lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company&#x2019;s long-lived assets by geographic area were as follows:&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:560.1pt" valign="top"/&gt;&lt;td style="width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;United States&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,104&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;23,327&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;27,605&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;England&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,339&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;21,871&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;23,548&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Ireland&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,990&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,173&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,639&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#FFFFFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Australia&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;392&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;440&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;423&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Canada&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;653&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;672&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;686&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#FFFFFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</fil:GeographicLongLivedAssetsInformationTextBlock>
    <fil:ScheduleOfLongLivedAssetsByGeographicAreaTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:560.1pt" valign="top"/&gt;&lt;td style="width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt;border-bottom:0.5pt solid #000000" valign="bottom"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;United States&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,104&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;23,327&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;27,605&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;England&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,339&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;21,871&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;23,548&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Ireland&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,990&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,173&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2,639&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#FFFFFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Australia&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;392&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;440&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;423&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Canada&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;653&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;672&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;686&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#FFFFFF;width:560.1pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:50.95pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:65.2pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:24.45pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#FFFFFF;width:101.8pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</fil:ScheduleOfLongLivedAssetsByGeographicAreaTextBlock>
    <fil:LongLivedAssetsInTheUnitedStates contextRef="E21" decimals="-3" unitRef="USD">19104000</fil:LongLivedAssetsInTheUnitedStates>
    <fil:LongLivedAssetsInTheUnitedStates contextRef="E20" decimals="-3" unitRef="USD">23327000</fil:LongLivedAssetsInTheUnitedStates>
    <fil:LongLivedAssetsInTheUnitedStates contextRef="E19" decimals="-3" unitRef="USD">27605000</fil:LongLivedAssetsInTheUnitedStates>
    <fil:LongLivedAssetsInEngland contextRef="E21" decimals="-3" unitRef="USD">19339000</fil:LongLivedAssetsInEngland>
    <fil:LongLivedAssetsInEngland contextRef="E20" decimals="-3" unitRef="USD">21871000</fil:LongLivedAssetsInEngland>
    <fil:LongLivedAssetsInEngland contextRef="E19" decimals="-3" unitRef="USD">23548000</fil:LongLivedAssetsInEngland>
    <fil:LongLivedAssetsInIreland contextRef="E21" decimals="-3" unitRef="USD">2990000</fil:LongLivedAssetsInIreland>
    <fil:LongLivedAssetsInIreland contextRef="E20" decimals="-3" unitRef="USD">3173000</fil:LongLivedAssetsInIreland>
    <fil:LongLivedAssetsInIreland contextRef="E19" decimals="-3" unitRef="USD">2639000</fil:LongLivedAssetsInIreland>
    <fil:LongLivedAssetsInAustralia contextRef="E21" decimals="-3" unitRef="USD">392000</fil:LongLivedAssetsInAustralia>
    <fil:LongLivedAssetsInAustralia contextRef="E20" decimals="-3" unitRef="USD">440000</fil:LongLivedAssetsInAustralia>
    <fil:LongLivedAssetsInAustralia contextRef="E19" decimals="-3" unitRef="USD">423000</fil:LongLivedAssetsInAustralia>
    <fil:LongLivedAssetsInCanada contextRef="E21" decimals="-3" unitRef="USD">653000</fil:LongLivedAssetsInCanada>
    <fil:LongLivedAssetsInCanada contextRef="E20" decimals="-3" unitRef="USD">672000</fil:LongLivedAssetsInCanada>
    <fil:LongLivedAssetsInCanada contextRef="E19" decimals="-3" unitRef="USD">686000</fil:LongLivedAssetsInCanada>
    <fil:RevenuesbyproductcategoryandregionTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 11 &#x2013;&#160;Revenues by Product Category and Geographic Region&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Global revenues by product category:&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt; &lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Obstetrics&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,675&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,523&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,000&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gynecology/ Electrosurgery/ Urology&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;21,973&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;20,552&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;25,354&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Neonatal&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,691&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,870&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,066&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Blood Pressure Monitoring and Accessories&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;15,715&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,233&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,484&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total:&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;49,054&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;42,178&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;46,904&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Included in the Global revenues (above) were OUS revenues by product category:&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt; &lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Obstetrics&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;735&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;846&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;947&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gynecology/ Electrosurgery/ Urology&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,053&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,934&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13,731&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Neonatal&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,347&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,490&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,412&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Blood Pressure Monitoring and Accessories&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,260&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,042&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,321&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total:&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;18,395&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,312&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,411&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"/&gt;
</fil:RevenuesbyproductcategoryandregionTextBlock>
    <fil:ScheduleofglobalrevenuesbyproductcategoryTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;Global revenues by product category:&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt; &lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Obstetrics&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,675&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,523&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,000&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gynecology/ Electrosurgery/ Urology&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;21,973&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;20,552&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;25,354&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Neonatal&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,691&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,870&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;6,066&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Blood Pressure Monitoring and Accessories&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;15,715&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,233&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,484&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total:&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;49,054&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;42,178&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;46,904&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</fil:ScheduleofglobalrevenuesbyproductcategoryTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y21_ProductOrService-Obstetrics_StGeo-Global"
      decimals="-3"
      unitRef="USD">4675000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y20_ProductOrService-Obstetrics_StGeo-Global"
      decimals="-3"
      unitRef="USD">4523000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y19_ProductOrService-Obstetrics_StGeo-Global"
      decimals="-3"
      unitRef="USD">5000000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y21_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global"
      decimals="-3"
      unitRef="USD">21973000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y20_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global"
      decimals="-3"
      unitRef="USD">20552000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y19_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Global"
      decimals="-3"
      unitRef="USD">25354000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y21_ProductOrService-Neonatal_StGeo-Global"
      decimals="-3"
      unitRef="USD">6691000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y20_ProductOrService-Neonatal_StGeo-Global"
      decimals="-3"
      unitRef="USD">5870000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y19_ProductOrService-Neonatal_StGeo-Global"
      decimals="-3"
      unitRef="USD">6066000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y21_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global"
      decimals="-3"
      unitRef="USD">15715000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y20_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global"
      decimals="-3"
      unitRef="USD">11233000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y19_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Global"
      decimals="-3"
      unitRef="USD">10484000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y21_StGeo-Global" decimals="-3" unitRef="USD">49054000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y20_StGeo-Global" decimals="-3" unitRef="USD">42178000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y19_StGeo-Global" decimals="-3" unitRef="USD">46904000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fil:ScheduleofousrevenuesbyproductcategoryTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;Included in the Global revenues (above) were OUS revenues by product category:&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt; &lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Obstetrics&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;735&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;846&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;947&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Gynecology/ Electrosurgery/ Urology&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;11,053&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9,934&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13,731&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Neonatal&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,347&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,490&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;1,412&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Blood Pressure Monitoring and Accessories&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;5,260&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4,042&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:101.65pt;border-bottom:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,321&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:508.15pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total:&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;18,395&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:65.05pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;16,312&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:79.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:24.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:101.65pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;19,411&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</fil:ScheduleofousrevenuesbyproductcategoryTextBlock>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y21_ProductOrService-Obstetrics_StGeo-Ous"
      decimals="-3"
      unitRef="USD">735000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y20_ProductOrService-Obstetrics_StGeo-Ous"
      decimals="-3"
      unitRef="USD">846000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y19_ProductOrService-Obstetrics_StGeo-Ous"
      decimals="-3"
      unitRef="USD">947000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y21_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous"
      decimals="-3"
      unitRef="USD">11053000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y20_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous"
      decimals="-3"
      unitRef="USD">9934000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y19_ProductOrService-GynecologyElectrosurgeryUrology_StGeo-Ous"
      decimals="-3"
      unitRef="USD">13731000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y21_ProductOrService-Neonatal_StGeo-Ous"
      decimals="-3"
      unitRef="USD">1347000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y20_ProductOrService-Neonatal_StGeo-Ous"
      decimals="-3"
      unitRef="USD">1490000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y19_ProductOrService-Neonatal_StGeo-Ous"
      decimals="-3"
      unitRef="USD">1412000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y21_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous"
      decimals="-3"
      unitRef="USD">5260000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y20_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous"
      decimals="-3"
      unitRef="USD">4042000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax
      contextRef="Y19_ProductOrService-BloodPressureMonitoringandAccessories_StGeo-Ous"
      decimals="-3"
      unitRef="USD">3321000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y21_StGeo-Ous" decimals="-3" unitRef="USD">18395000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y20_StGeo-Ous" decimals="-3" unitRef="USD">16312000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax contextRef="Y19_StGeo-Ous" decimals="-3" unitRef="USD">19411000</us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax>
    <fil:ProductSaleAndPurchaseCommitmentsTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 12 - Product Sale and Purchase Commitments&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company has had license agreements for the rights to develop and market certain products or technologies owned by unrelated parties. &#160;The confidential terms of such agreements are unique and varied, depending on many factors relating to the value and stage of development of the technology licensed. &#160;Royalties on future product sales are a normal component of such agreements and are included in the Company&#x2019;s cost of goods sold on an ongoing basis.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;In 2021, 2020 and 2019, UTMD received royalties of $15, $20 and $6, respectively, for the use of intellectual property. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;UTMD had $4,891 in operating lease and purchase commitments as of December 31, 2021.&lt;/p&gt;
</fil:ProductSaleAndPurchaseCommitmentsTextBlock>
    <us-gaap:RoyaltyIncomeNonoperating contextRef="Y21" decimals="-3" unitRef="USD">15000</us-gaap:RoyaltyIncomeNonoperating>
    <us-gaap:RoyaltyIncomeNonoperating contextRef="Y20" decimals="-3" unitRef="USD">20000</us-gaap:RoyaltyIncomeNonoperating>
    <us-gaap:RoyaltyIncomeNonoperating contextRef="Y19" decimals="-3" unitRef="USD">6000</us-gaap:RoyaltyIncomeNonoperating>
    <us-gaap:ContractualObligation contextRef="E21" decimals="-3" unitRef="USD">4891000</us-gaap:ContractualObligation>
    <us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 13 &#x2013;&#160;Employee Benefit Plans&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company sponsors a contributory 401(k) savings plan for U.S. employees, and contributory retirement plans for Ireland, UK, Australia and Canada employees. &#160;The Company&#x2019;s matching contribution is determined annually by the board of directors. &#160;Company contributions were approximately $165, $167 and $171 for the years ended December 31, 2021, 2020 and 2019, respectively.&lt;/p&gt;
</us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount contextRef="Y21" decimals="-3" unitRef="USD">165000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount contextRef="Y20" decimals="-3" unitRef="USD">167000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount contextRef="Y19" decimals="-3" unitRef="USD">171000</us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount>
    <us-gaap:LesseeOperatingLeasesTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 14 &#x2013;&#160;Leases&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;UTMD has operating leases for a portion of its parking lot at its Midvale facility and an automobile at its Ireland facility. &#160;The remaining lease term on the parking lot is 10 years and on the automobile it is 30 months. &#160;There are no options to extend or terminate the leases. &#160;The parking lot lease contains a provision that requires an adjustment every five years to the lease payment based on the change in the Consumer Price Index. &#160;This adjustment occurred in 2021 requiring an increase of $87 to the value of the right-of-use asset and lease liabilities. UTMD has no other leases yet to commence. &#160;As neither lease contains implicit rates, UTMD&#x2019;s incremental borrowing rate, based on information available at adoption date, was used to determine the present value of the leases.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Operating lease costs for the years ended December 31, 2021, 2020, and 2019 were $63, $61, and $60, respectively.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Supplemental balance sheet information related to operating leases was as follows (&lt;i&gt;in thousands&lt;/i&gt;):&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;br/&gt;&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr style="height:23.85pt"&gt;&lt;td style="width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;As of December 31, 2021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Operating lease right-of-use assets&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$449&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="-sec-ix-hidden:fact7"&gt;Operating lease liabilities &#x2013;&#160;current (included in Accrued Expenses)&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;52&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Operating lease liabilities &#x2013;&#160;long term&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;396&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total operating lease liabilities&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$449&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr style="height:23.75pt"&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Maturities of operating lease liabilities at December 31, 2021 were as follows (&lt;i&gt;in thousands&lt;/i&gt;):&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;As of December 31, 2021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2022&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$66&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2023&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;66&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2024&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;57&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2025&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;49&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2026&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;49&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Thereafter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;227&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; &#160;&#160;&#160;&#160;Total lease payments&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$514&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; &#160;&#160;&#160;&#160;Less: imputed interest&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(65)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; &#160;&#160;&#160;&#160;Total lease liabilities&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$449&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:23.75pt"&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;The following table provides information on the lease terms and discount rates:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;As of December 31, 2021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Weighted average remaining lease term &#160;(in years)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9.1 years&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Weighted average discount rate&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3.6%&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:12pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin-top:0pt;margin-bottom:10pt"&gt;&#160;&lt;/p&gt;
</us-gaap:LesseeOperatingLeasesTextBlock>
    <fil:LesseeOperatingLeaseForParkingLotTermOfContract contextRef="D211231">P10Y</fil:LesseeOperatingLeaseForParkingLotTermOfContract>
    <fil:LesseeOperatingLeaseForAutomobileTermOfContract contextRef="D211231">P30M</fil:LesseeOperatingLeaseForAutomobileTermOfContract>
    <fil:LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI contextRef="Y21" decimals="-3" unitRef="USD">87000</fil:LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI>
    <us-gaap:OperatingLeaseCost contextRef="Y21" decimals="-3" unitRef="USD">63000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost contextRef="Y20" decimals="-3" unitRef="USD">61000</us-gaap:OperatingLeaseCost>
    <us-gaap:OperatingLeaseCost contextRef="Y19" decimals="-3" unitRef="USD">60000</us-gaap:OperatingLeaseCost>
    <fil:ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock contextRef="Y21">&lt;br/&gt;&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr style="height:23.85pt"&gt;&lt;td style="width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;As of December 31, 2021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Operating lease right-of-use assets&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$449&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="-sec-ix-hidden:fact7"&gt;Operating lease liabilities &#x2013;&#160;current (included in Accrued Expenses)&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;52&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Operating lease liabilities &#x2013;&#160;long term&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;396&lt;/span&gt;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:831.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Total operating lease liabilities&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:264.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$449&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
</fil:ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock>
    <us-gaap:OperatingLeaseRightOfUseAsset contextRef="E21" decimals="-3" unitRef="USD">449000</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent contextRef="E21" decimals="-3" unitRef="USD">52000</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent contextRef="E21" decimals="-3" unitRef="USD">396000</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiability contextRef="E21" decimals="-3" unitRef="USD">449000</us-gaap:OperatingLeaseLiability>
    <us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock contextRef="Y21">&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr style="height:23.75pt"&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Maturities of operating lease liabilities at December 31, 2021 were as follows (&lt;i&gt;in thousands&lt;/i&gt;):&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;As of December 31, 2021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2022&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$66&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2023&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;66&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2024&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;57&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2025&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;49&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;2026&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;49&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Thereafter&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;227&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; &#160;&#160;&#160;&#160;Total lease payments&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$514&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; &#160;&#160;&#160;&#160;Less: imputed interest&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;(65)&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt; &#160;&#160;&#160;&#160;Total lease liabilities&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;$449&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:23.75pt"&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;The following table provides information on the lease terms and discount rates:&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;As of December 31, 2021&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="background-color:#CCEEFF;width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Weighted average remaining lease term &#160;(in years)&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;9.1 years&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td style="width:796.35pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Weighted average discount rate&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:299.4pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3.6%&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:12pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
</us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths contextRef="E21" decimals="-3" unitRef="USD">66000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo contextRef="E21" decimals="-3" unitRef="USD">66000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree contextRef="E21" decimals="-3" unitRef="USD">57000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour contextRef="E21" decimals="-3" unitRef="USD">49000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive contextRef="E21" decimals="-3" unitRef="USD">49000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive contextRef="E21" decimals="-3" unitRef="USD">227000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue contextRef="E21" decimals="-3" unitRef="USD">514000</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount contextRef="E21" decimals="-3" unitRef="USD">65000</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability contextRef="E21" decimals="-3" unitRef="USD">449000</us-gaap:OperatingLeaseLiability>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="E21">P9Y1M6D</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent contextRef="E21" decimals="INF" unitRef="Pure">0.036</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:IntangibleAssetsDisclosureTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 15 &#x2013;&#160;Distribution Agreement Purchase&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;UTMD completed the purchase of exclusive U.S. distribution rights for the Filshie Clip System from CooperSurgical, Inc. (CSI) on February 1, 2019, after which CSI will no longer sell the FILSHIE Clip System and UTMD will distribute the FILSHIE Clip System directly to clinical facilities in the U.S. The $21,000 purchase price represents an identifiable intangible asset which will be straight-line amortized and recognized as part of G&amp;amp;A expenses over the 4.75 year remaining life of the prior CSI distribution agreement with Femcare. &#160;As part of the agreement, UTMD also purchased the remaining CSI inventory for approximately $2,100.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
</us-gaap:IntangibleAssetsDisclosureTextBlock>
    <us-gaap:FinitelivedIntangibleAssetsAcquired1
      contextRef="Y21_DistributionRightsAcquisition-CoopersurgicalInc"
      decimals="-3"
      unitRef="USD">21000000</us-gaap:FinitelivedIntangibleAssetsAcquired1>
    <fil:RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem
      contextRef="Y21_DistributionRightsAcquisition-CoopersurgicalInc"
      decimals="INF"
      unitRef="Pure">4.75</fil:RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem>
    <us-gaap:EarningsPerShareTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 16 &#x2013;&#160;Earnings Per Share&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;Basic earnings per share is calculated by dividing net income attributable to the common stockholders of the company by the weighted average number of common shares outstanding during the period. &#160;Diluted earnings per share is calculated by assuming the exercise of stock options at the closing price of stock at the end of 2021.&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share:&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr style="height:12.5pt"&gt;&lt;td colspan="6" style="width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td colspan="6" style="width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"/&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:12pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;Numerator &lt;/b&gt;&lt;i&gt;(in thousands)&lt;/i&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:11.2pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net income&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,788&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,798&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,727&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;Denominator&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Weighted average shares, basic&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,647&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,658&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,721&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Dilutive effect of stock options&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;18&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Diluted shares&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,660&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,672&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,739&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings per share, basic&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4.05&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2.95&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3.96&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings per share, diluted&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4.04&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2.94&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3.94&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:12pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The following table reconciles the numerator and the denominator used to calculate basic and diluted earnings per share:&lt;/p&gt;
&lt;table style="border-collapse:collapse;width:100%"&gt;&lt;tr style="height:12.5pt"&gt;&lt;td colspan="6" style="width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td colspan="6" style="width:1095.75pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"/&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2021&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2020&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:12pt Times New Roman;margin:0;text-align:center"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-bottom:0.5pt solid #000000" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:center"&gt;2019&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;Numerator &lt;/b&gt;&lt;i&gt;(in thousands)&lt;/i&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt;border-top:0.5pt solid #000000" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:11.2pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Net income&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,788&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;10,798&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14,727&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;b&gt;Denominator&lt;/b&gt;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Weighted average shares, basic&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,647&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,658&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,721&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Dilutive effect of stock options&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;13&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;14&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;18&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Diluted shares&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,660&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,672&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3,739&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="background-color:#CCEEFF;width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings per share, basic&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4.05&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2.95&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="background-color:#CCEEFF;width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3.96&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr style="height:12.5pt"&gt;&lt;td style="width:434.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0"&gt;Earnings per share, diluted&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:184.95pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;4.04&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:53pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;2.94&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:52.15pt;padding-left:5.75pt;padding-right:5.75pt" valign="top"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;&#160;&lt;/p&gt;
&lt;/td&gt;&lt;td style="width:185.35pt;padding-left:5.75pt;padding-right:5.75pt" valign="middle"&gt;&lt;p style="font:10pt Times New Roman;margin:0;text-align:right"&gt;3.94&lt;/p&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;
&lt;p style="font:12pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:ProfitLoss contextRef="Y21" decimals="-3" unitRef="USD">14788000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y20" decimals="-3" unitRef="USD">10798000</us-gaap:ProfitLoss>
    <us-gaap:ProfitLoss contextRef="Y19" decimals="-3" unitRef="USD">14727000</us-gaap:ProfitLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="Y21" decimals="-3" unitRef="Shares">3647000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="Y20" decimals="-3" unitRef="Shares">3658000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic contextRef="Y19" decimals="-3" unitRef="Shares">3721000</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="Y21" decimals="-3" unitRef="Shares">13000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="Y20" decimals="-3" unitRef="Shares">14000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment contextRef="Y19" decimals="-3" unitRef="Shares">18000</us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="Y21" decimals="-3" unitRef="Shares">3660000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="Y20" decimals="-3" unitRef="Shares">3672000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding contextRef="Y19" decimals="-3" unitRef="Shares">3739000</us-gaap:WeightedAverageNumberOfDilutedSharesOutstanding>
    <us-gaap:EarningsPerShareBasic contextRef="Y21" decimals="INF" unitRef="UsdPerShare">4.05</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="Y20" decimals="INF" unitRef="UsdPerShare">2.95</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic contextRef="Y19" decimals="INF" unitRef="UsdPerShare">3.96</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareDiluted contextRef="Y21" decimals="INF" unitRef="UsdPerShare">4.04</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y20" decimals="INF" unitRef="UsdPerShare">2.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:EarningsPerShareDiluted contextRef="Y19" decimals="INF" unitRef="UsdPerShare">3.94</us-gaap:EarningsPerShareDiluted>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 17 &#x2013;&#160;Recent Accounting Pronouncements&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company has determined that other recently issued accounting standards will either have no material impact on its consolidated financial position, results of operations or cash flows, or will not apply to its operations.&lt;/p&gt;
</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
    <us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company has determined that other recently issued accounting standards will either have no material impact on its consolidated financial position, results of operations or cash flows, or will not apply to its operations.&lt;/p&gt;
</us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock>
    <us-gaap:SubsequentEventsTextBlock contextRef="Y21">&lt;p style="font:10pt Times New Roman;margin:0"&gt;&lt;span style="border-bottom:1px solid #000000"&gt;Note 18 &#x2013;&#160;Subsequent Events&lt;/span&gt;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;The Company evaluated its December 31, 2021 financial statements for subsequent events through the date the financial statements were issued. &#160;The Company is not aware of any subsequent events which would require recognition or disclosure in the financial statements. &lt;/p&gt;
&lt;p style="font:10pt Times New Roman;margin:0"&gt;&#160;&lt;/p&gt;
</us-gaap:SubsequentEventsTextBlock>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>116
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( +E^>50'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " "Y?GE4P;: ^N\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9+/
M:L,P#(=?9?B>*(GIH";-9:6G#08K;.QF;+4UB_]@:R1]^SE9FS*V!]C1TL^?
M/H%:%83R$9^C#QC)8+H;;>^24&'#3D1! "1U0BM3F1,N-P\^6DGY&8\0I/J0
M1X2FJN[!(DDM2<($+,)"9%VKE5 1)?EXP6NUX,-G[&>85H ]6G24H"YK8-TT
M,9S'OH4;8((11IN^"Z@7XES]$SMW@%V28S)+:AB&<N!S+N]0P]O3X\N\;F%<
M(ND4YE_)"#H'W+#KY%?^L-WO6-=435-4O&A6^WHM5ESP]?OD^L/O)FR]-@?S
MCXVO@ET+O^ZB^P)02P,$%     @ N7YY5)E<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
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
M>QXN)-N6)X>/3$J6E3\W!"O:&J">/S'5D*L+?1A9'SY/_P-02P,$%     @
MN7YY5 V860I[ @  G 8  !@   !X;"]W;W)K<VAE971S+W-H965T,RYX;6R=
ME6%OFS 0AO^*A?:Q"P1"-E4)$B69&JEMHI)VGUVX!*L&9[9INOWZG0U!:4O6
M=OD0^^Q[7YX[P$SV0CZJ D"3YY)7:NH46N_.75=E!914#<0.*MS9"%E2C:'<
MNFHG@>965'+7][RQ6U)6.='$KJUD-!&UYJR"E22J+DLJ?U\ %_NI,W0."[=L
M6VBSX$:3'=U""OINMY(8N9U+SDJH%!,5D;"9.O'P/!F;?)MPSV"OCN;$5/(@
MQ*,)%OG4\0P0<,BT<: X/$$"G!LCQ/C5>CK=)8WP>'YP_V%KQUH>J()$\)\L
MU\74^>Z0'#:TYOI6["^AK2<T?IG@ROZ3?9OK.22KE19E*T:"DE7-2)_;/AP)
MAJ,3 K\5^!\5!*T@L(4V9+:L&=4TFDBQ)])DHYN9V-Y8-5;#*G,74RUQEZ%.
M1W?K^))<SV>+)+XBJ]OE["Y9IV=D<9,,2+*\29=7BUF\GL_(17P5WR1SDE[.
MY^N4?"4K*J'2!6B648[Q%^(25>"B.@RL(NM"U(I6N9JX&FG--=VL);MHR/P3
M9#/(!B08GA'?\X<]\N3C<N^EW,4>=8WRNT;YUB\XZ:<IX^H?3D'G%%BGT0FG
M1)0E/L"I%MGCF6DC$1(CJB$G]Y370%: "Z:'?5UKS+]9<_../D7>P,,&/1WW
MYIVD%]RCCGOT">ZTN<=QK0LAV1_(^U@;P_ ((_3P]PKVO:P7M&%'&WZ:%I]K
MI>I^U/ -1# .PU>D?4FCH!]TW(&._P-T66NE\<5AU;:/=OP1VKZD-[3NT=EA
MSNUK*K>L4H3#!F7>X!OJ97,6-H$6.WN</ B-AY.=%OCY &D2<'\CA#X$YH3J
M/DC17U!+ P04    " "Y?GE46#F:GB4%   H$P  &    'AL+W=O<FMS:&5E
M=',O<VAE970T+GAM;(V8VT[K.A"&7\6JN  )VM@YHU()&M9>2 N*:-G[VC1N
M&Y'$W;;;PMLO.PE)ZSB!"V@._TS\V>,9V^,#9>]\0X@ 'UF:\YO!1HCM]6C$
MEQN283ZD6Y++-RO*,BSD+5N/^)81'!=&63I"EN6-,ISD@\FX>/;,)F.Z$VF2
MDV<&^"[+,/N\(RD]W S@X.O!2[+>"/5@-!EO\9K,B7C=/C-Y-ZJ]Q$E&<I[0
M'#"RNAG<PNL(%0:%XM^$'/C1-5 H;Y2^JYN'^&9@J1:1E"R%<H'ESYY,29HJ
M3[(=_U=.!_4WE>'Q]9?W7P6\A'G#G$QI^E\2B\W-(!B F*SP+A4O]/";5$"N
M\K>D*2_^@T.EM09@N>."9I6Q;$&6Y.4O_J@ZXL@ >AT&J#) NH'386!7!O9/
M#9S*P"EZID0I^B'" D_&C!X 4VKI35T4G5E82_PD5^,^%TR^3:2=F+PN;G^#
MQ_OH87K[!SR_S*+7Z6)^"1Z>ID,PG3W-9W\>HMO%?03F"_GS>/^TF(/9+_5^
M]G@/KL#K/ +G9Q?@#"0Y6&SHCN,\YN.1D&U37Q@MJW;<E>U '>V "#S27&PX
MN,]C$I\Z&$FHF@Q]D=VA7H\160Z!#2\!LA T-&CZ<W/+8![]V!R&/31V/4YV
MX<_N]"=PDO(>3T[MR2D\.1V>YC@E_!+D,J><YU00#F0K[4L0 CER ,(+T^"5
M+KW"I4HE^XD36JXS'NV/>]2@0M /3E610>6%5N/KA,JMJ=Q>JBGE M 56%,:
M<\!I&ILP2A_NT:=A &U?PS"H/,^V- R#RG?LP(SAU1A>+\8_C'(.MHRN$F$"
M\%H?M:T0Z@!M%7)=1Q\'@RIT/,\,X-< _O?15422+"/O1"3YVL3AMSO/@7HX
M&42N'G.10>1WC4)00P2]$"^$$\R6FX(C)GM9';>RUAE')&A]WT6>!M+6.(&F
MB4P:VXP1UAAA?S"1G#"<%A0XEL4CX8)A56=-(&&[(RTKU$.KK0H#2Y\:!I$'
M.V"@U50JJQ=GMB6J]?E:EIHES8P0E8O3&1X$6@.G)IGM6_H,,<E\ST8=)$<U
M%_:21,D^B8D:%?F7Y((P(K-7#Q4T922=R2""2"=JBY#;D7HA:GA0_WRAGS@5
MGQ5!658 1,9*4KDZG=4Z2EN#]!@S:#I2%VQJ++3[(TQL""M*H['E=NN+K;CZ
M5A(9)%<=Z0HV)1WVU_2'LN/?B-P($%4^]DFQ,)>W7X,B\ <QK\N<]H"$E@=U
M-(/,#IP6GD'F!T%7B#7E'?;7]^=.IBK<?'.TM:NT@WQ;9VNK;,MIS1V#"KI^
M!UE3\6%_R7\BO5/?:ZV6H",[5"<PR"P_;"4THS?4Q= 4?=A?]>\QRV5BEBL7
MPH!$R>0X\0V6L7@N-V7)\N(K)Y@'J73N'P_2T&HEA;8*#4-7)VRK[&'8E1F:
M!0'L7Q'T ,9)NA,D_@8Q,"'J"QZ#2B+J*QZ#RCY6G2(VBP48]NXPBN2GV+:,
M;-3&?D_JA)[*5>E%WYZL*>*HOXC+S;K<BN=R:\L8R9>?0*Y(<I[BXA! [4GD
M&KZ<UO+BS%*[2IRFJML3:MY75A\\CNDKOS7%#2KH6OH4-ZLZI@=JZCWJK_<+
M*N0RS-2U1B!HF*16JTB:9,ANK<5,,@_9>KB,CHX0,L+6Q5$,EVW>Y:+<<]=/
MZ^.>V^*00WM^!Z^C\M"F<5.>(3UBMDYR#E*RDBZMH2\S*2N/9<H;0;?%0<4;
M%8)FQ>6&X)@P)9#O5U1.L.I&?: ^')O\!5!+ P04    " "Y?GE4HRJ3I'L"
M  #;!0  &    'AL+W=O<FMS:&5E=',O<VAE970U+GAM;(U4;6_:,!#^*Z=H
M'UJ)D1=HMU40"1*J(I6"FK!]=A-#LCHVLPVT_[YG)V2L*JQ?8M_YGL?WG',W
MV OYK I*-;Q4C*NA4VB]N7%=E16T(JHK-I3CR4K(BF@TY=I5&TE);D$5<P//
MNW8K4G(G'%C?0H8#L=6LY'0A06VKBLC7,65B/W1\Y^!X+->%-@XW'&S(FB94
M+S<+B9;;LN1E1;DJ!0=)5T-GY-_$?1-O WZ6=*^.]F"4/ GQ;(QI/G0\DQ!E
M--.&@>"RHQ%ES!!A&G\:3J>]T@"/]P?V6ZL=M3P112/!?I6Y+H;.=P=RNB);
MIA_%_HXV>JX,7R:8LE_8-[&> ]E6:5$U8,R@*GF]DI>F#D< __H$(&@ P7M
M_P2@UP!ZGP7T&X MM5M+L76(B2;A0(H]2!.-;&9CBVG1*+_DYMD3+?&T1)P.
ME^GH#F:3>!J-[F'Q.(^749IT8/H0=2&:/R3S^VD\2B<Q)"DNL\E#FL#\UIS/
M9Q/X"@LB*=<%U65&&-K+)(:++Y<#5V-RY@HW:Q(9UXD$)Q+Q Y@)9%(PX3G-
M_R5P454K+3A(&P=G&6.:=:'G=R#P O^#A*+/P[T/X/&GX?Z/,VIZ[4/U+%_O
M))\F)5-GF/HM4]\R]4\PS?&Y)$2BPCE1F ;>49CR3%04+NZ%4I<=P);"AN$0
M;24^;_8*J21<,6);=93_QO\26U]W("4O'SUUG<"U3< ,GEV(%=P=U_Z_$?&Y
MB%JW>_3;5U2N[?A0D(DMU_5OTGK;"36RC?G./\;)50^:OS3UV)L1N2ZY D97
M2.EUOUTY(.M14AM:;&QS/0F-K6JW!4Y?*DT GJ^$T ?#7-#.\_ -4$L#!!0
M   ( +E^>5003(WD>P8  )@E   8    >&PO=V]R:W-H965T<R]S:&5E=#8N
M>&ULQ9IM<ZI&%,>_RH[3F;8S,;(+"-PQSB2"<YW>FZ31M-.7>V43Z>7!"YB'
M;]\%B<CNPC&-MF\4]'_.'OYG%WXHH^<D_9ZM&,O12Q3&V45OE>?K3X-!MERQ
MB&;GR9K%_)N')(UHSG?3QT&V3AGURZ H'!!-&PXB&L2]\:C\[#8=CY)-'@8Q
MNTU1MHDBFKY>L3!YONCAWML'=\'C*B\^&(Q':_K(YBR_7]^F?&^PR^('$8NS
M((E1RAXN>I?XTU0WBX!2\4? GK.];50<RK<D^5[LS/R+GE94Q$*VS(L4E+\]
ML0D+PR(3K^-'E;2W&[,(W-]^RSXM#YX?S#>:L4D2_AGX^>JB9_>0SQ[H)LSO
MDN?/K#J@LL!E$F;E*WJNM%H/+3=9GD15,*\@"N+M.WVIC-@+P'I+ *D"B!!
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
M>A7IJ5<9[GIY&;YP]NC)Y;(",'.;I0LA0R1[&<?C.KY\6Y%K>WDU;;#G*#H
M"['# ^AK/E@<>D7'P2B3&[5C\H@&G(K ?;?O+"079*M5#'4T6!!Z"X#'/<!5
M^: MB9".HVBC=[5[ZD>VD *HA2U),=05#J,A!KT3P.-6X%:R?<*SEW5?(>WR
MD:A3DQYTK2O56*EVY7T:89N>"](ST:8']#28GMXHX'&GT"V6??(\N%( L2>V
M?D(@ZI( 3,&0*\"]+< G?$&:R@/K,P22<-5[CAT2+BCTG,7N@G0B @RS(+T5
M(*>L0+F=*B8+9":<+LZ-W&@%'4L..>T%3D-B #*E=,!#D]X-D'$W</W_-ALM
M,U?7"2:>G3,(YF%J9PV X;D7#"P@TML$0GYI<\IUO:O>OI4BO7:3<>W6GEX/
MG'JNRP_[Y\#W9J\'#IRKJM,@L"4!0D6.#P'[\H<F1J_19%RCKTJ5E%MNK,=P
M[22NJCI3^R0D!B!3@KVA#2+IU9F,JW,WN=\=JMKPOG]#\EMF@-0"&0)00(8
M%,'#.>J5FX2_-+,WO$S*].TSNQ=8<DI@1<I8]K* JNJ@WU/[4.V["UT"&SLZ
M'3.DQ%7'P!ZJ%0"B@2U1 (A$ Z:4]#I+QG5V=<QD?Y#IKMY8F+4LF>+2/O9K
M6;ERZ7 "=#=<S.U-$@2CBP&'2GKE)>/*&W-3ULO,^ <.4X#4$ONA;?$@G(^Q
MPP.&$9@([<67CHLOL)A/S_>&(06T$WL+SV8(X^;4]K$0SB=#QX.T%V,Z+L:7
MFPU+E5E6[$E/OW++D-9AAIKK^GS(C !($=IBAW:] E#$*5< B YY=-JK,!W?
MK+=GM[(^!GJ7L>;*%.0FJV:=U1=&.!^2W)R2@D3=;?>"1O;A%X"*(MN8Q !J
M&E$2#' ].@T?-P)U74Z4WLAO>5F:^:E3^LP2"1)R]3O P<*N(@#,)_/(-E%@
M;\.KK[<#=-P.O%!B9F<U0@;8BWN+N9,>%P9PC@'8:\ZOR?2^@([[@II,O6/,
M#M*D1V\5D;9N7&3U<>RIDS$*[-6=(X<5@*(XLLLE@ JH-[#AHKTUH..;^M,4
M]3Y&.R&07NA\_7!FXTE(/ II6,V./A,63&[KSZT5JO>[S:>T[FGW27=9?\BT
MGG_"'^/FPVS?3?.=^%LB]1JL4,XVNDOOPUP/M&P^O38W2NSKCY'W0BE1U)<[
MEF1,&H#^?2.$>KDQ+^@^@%_\!U!+ P04    " "Y?GE4]]_[,>$3  "--
M&    'AL+W=O<FMS:&5E=',O<VAE970X+GAM;+5;^W,;-Y+^5U ZWZY515&B
M7E;B1Y4LVQM?[$1E69NZ'\$9D$0\,V" &4G,7W]?=P.8&8KR;NKNJA*+#Z"[
MT<^O&\-7]\Y_"RMC6O505TUXO;=JV_6/AX>A6)E:AZE;FP;?+)RO=8NW?GD8
MUM[HDC?5U>'QT='Y8:UML_?F%7]V[=^\<EU;V<9<>Q6ZNM9^\]94[O[UWFPO
M??#%+E<M?7#XYM5:+\V-:6_7UQ[O#C.5TM:F"=8URIO%Z[W+V8]O3VD]+_BG
M-?=A\%K12>;.?:,W'\O7>T<DD*E,T1(%C3]WYLI4%1&"&']$FGN9)6T<OD[4
M/_#9<9:Y#N;*5;_9LEV]WKO84Z59Z*YJO[C[GTP\SQG1*UP5^%]U+VO/CO=4
MT876U7$S)*AM(W_U0]3#8,/%T1,;CN.&8Y9;&+&4[W2KW[SR[EYY6@UJ](*/
MRKLAG&W(*#>MQ[<6^]HWO[C6J)DZ4#=B%>46ZL8N&[NPA6Y:=5D4KFM:VRS5
MM:ML84UX==B",6T_+"*3M\+D^ DFLV/UV37M*JCW36G*,8%#2)S%/DYBOSW^
M+L5WIIBJD]E$'1\=S[Y#[R2KX83IG7Q'#>$[=$XSG5.F<_K_J\[O,J$X_3&L
M=6%>[R$0@_%W9B]Q_MM_7!S/9B__ G_UJU_JQOZI.4IN6[U2GTV)Y96Z]J[L
MBC9,U,<&^KZW[4JM$/E_=-JWQ@=E&_79EG>Z,A/9J9M2V3:H^Y6KJLV!NV],
MJ9!!O&:>H9L'6UKMP7>B/IBZT-ZH3[:V+=95KM#T%U2_N#J8S43]I.MU6%D/
M^N^;907R_;9+1(?7E=7JNMVH3^V(P)4.;6743[:J)NJ7F]\F_?+)[D-B2Z-+
M'<_ZO)SKS$F^V1_2_VQ#P'^Z6V+'KTV+([E)7,A:V,T#4DXGT(XM5E$M,(!&
M0#?= @FJ\Z0EO+*5Q9G Y[)=5:[!\3]Z(\=_CD_;E5%ZN?1F"0(3?GOEZK5N
M-ON*!(Y+UMZR$\R[ !<*@;RA-'?(Q&OPF6RQ):F7E9MK6$Z5%MJR\T[,MC:%
MA>K^Q-GK>"30L06$1UU@7O"+JET5PKTD76^FZFLO&#OFBY=!S;W3I?*Z61J2
M9YU48YNBZDI0;%<N&-4%473A;<L,F33^UX$E)9Z5GH,[O2M-A>2.HY9F#=]$
MU6CYM""UMJVNX&W8=X_D3W]1G-9P2"Q2!8++%D)RO=H$A(1N0A06%!9TR&EO
M0!(BN H<X91%"TVU3IFF/("\/EF.HBJ:X'9Z,QT8[_;G2?:S#]!!89CSP#?E
M;-YURQ7^6@^Q<*"!09S$G0-U3R=!0)G,2CW_]?9F'X;UWPR*M7KG:A-8?Q6B
MB2*_@E?/?4=NP>ES]D,?42L81C?*/, 2 ?H4DKTK<!VN.%$@*->2$*X<.?)-
MYY?$)H7/U<W'_>P;'VR%]7"%"IMN-J$U]53=?OW\3L$R3J%&5X%R0X$BX>&/
M \>$$Q1P((0 6924LX#!4._*WG-@ 0?CJ]G9$2]&-AL;( EB?79?HM2XYB"]
M3\0@5V"_? ^UU1R>D="U)]>2+(GO/]@&YD-4J)L6R\3COG+0C=8M\KK0KR._
M=@U!*@IS5J/N,S/"%CO6%7@O38,D00&)[\TZ)A\^5\,YDYFSJU_6QN,HL- ?
M'7PSD!(!JX@A::C6WXPR^5!T?AT Q=9L39#4K=*+!7R:R>,0SA,#79-8S 'K
M330"7'6>/)WCSX:B<@'VHH5D1QR$.#^U1[B4D(4VT.N=BDJ1ODL<CTS6=%$
M\P"8&O"FE&36;V*-0C6NG*I+I"B.+/(M<(*:@-X"!.XXI'%^!+%W=4Q"65^3
MH3;G2#;@#3.V"!G:W5 0DJ\.=$'O*F)1F3LJO;81"$U^ 1O"'B09%<O>*FP%
M>NFM&%T,DD^/<S"1E#>*SGN2"!6XDS25/0<*NH)<*/*E\"3?+/(GIGS*,SD+
MQ_-'T\04GJO[L(R34BML@\Q%6B:N'*V'+!=T(5ZVTD@J<V.08RH4_295TV(H
MZ92*MT )?O$>_DP0@R@"B:MUY]<NR!';[4/EH[ ?TO8%^HXPJI'98$%60#DH
M&R[ G,0TK*#L YRGAF@P<ZPF'*7.VR7$KLA(G1=?9C&\,:H6C L1*RJV"+JY
M$0YL*WIA^K-,R3Z%H8R7<L457 A"?+'A6TPE4K^+[86%+/2TD \3)"2PI"2_
M+PRXS"NRSD=)%PVY346.[L6N"1.,-8,T>&>I"$<.I 4^"9E=VA&H;<HXTI=P
M8"HK(P+BH9"F63IR\$C(D(M*Y2#N(W*L'FH@6_P?*&K</;FX@ L8)EB<!>@K
MD-49/!&&,E2-!)5,!IY%=HHY,H.,/GC_'CA5%&V4!>&+-I!Z1#C/?,."14P=
M1OCE[[W W :.]#Z &6-\-"K;DQYA0-$4$T7,7ES,0X\IN,I"("A^@*NB<?P6
MF&$@,(9RN0H.4M[02C;$U"*'IJ^(W,'<T.X85X(%=P&[438L'0[1N)P651CT
M&]L..?)<\\#Z0\I#.V?J.8Z16CK"("AW0"PXKV"2UH-?$JK/7<"',,/(5 -?
M8C^CP(-'S'7SK0_TE*/PA2XA$D46U/W!$I1$4?Z80Y_BVFPBILH;QQRI#) .
MR+>0%>&\5 LVR6?!)'3%:IP9AV7$YNU<.""('NEQJ#8(^E12P1DKCIQIZO2"
M^M(K/W\V, BCZEA4R\X0]8B%5-!50@I8U*&\%@3(ID_2@9/@\&6L[D!;J;(1
MB*MX$,-+ZZC!F._L$.? T(:&!"2('N9B!)T-+T&X(__?(4'IHAMJ+_4(W)7.
M%5]12*EBI3UR0JTWE)SU>EU9T3?;9Y Y(R*BL$,K*6BE$\3RM ($9PC<3BF/
M*BW26%2 0* -IQ ^(U./YETA'IPT[>/DF.I\]$&D'O%8Z4SN;.!<1FRBP_&\
M:[>,I2%UVD;8T[E8L\24-@]<>**^->C@I>PWR#(D KM@:D&%1?*ZD:@&0KK:
M%@-AU?-@J!+!#,?[4XZP!N>E&OIA&]1/>)IW8)L#?%)PG?+Z/F,C44OHV'Z!
MZW0BQ1U:RWJ/*!/EA%HEPJ5!2GQCVE@[6"T,G]3S7[[\<Y]39]<F_UM8'UI(
M,8FOT&\AP\.E$ 6_[")B [/L'9^:FPCJB]R8<^V4ROZX'C-XH#[7-2!,-9E*
M2BOIT\6*0V)6AM0ZH1J#M$&]5P9<A!<%+8QU#F^!=5N!<@2LUISA1A^;_/%8
ME<0;':6!/,B\,E-M&)$#9,?Q$6>!I$$ZD2!QZFYI/'I HZRH0.G9>D6A@5YT
ME:(^GLORPA$."#^JMYVMRC2@L#55P0A69V?J0)T>J0U"'C[4>?1$'<V*!D<@
MC3C')CC!ZEE:_0D Y> 3F*'[EAYEF,]3[$H%J6AMQ6MC/V,EOGS)?L_0<#!:
M0U/6E-J7 ?1*3N%BBLN;JWUU<GXTX3'=\='+P9[4*W^$ -8G!/M(RBGOG+V4
M;T8RK4PE#0B/3F)9S]#=4QF^L^8^YB/;\R$H9=@8=S(W\90F 9VD4;6^Z&JX
M 2,R0  ZCI'T*%F>HHGF[C$$*+=*(J;40U8FUYVJWPBQ<9HEH.)2:AN19TBP
M#=;QUYL0)UKN=X$M0 ;HLTA[=*".[#[ ^Z031UZ*+]DZT@\*JF)]T2F7WG7K
M06?+'KE=N<9^N218D0X.J0A*TJ2$2M^&G305M]Z0$V47A 8FE!URXN<T\5#$
ML1PW,F,:61SH"\Q$N;R46K-!8VTYQ\,9^^F %")Z)[-&+E\Q\8LSWFN:$)2&
M\C"4O^3*'"/ABK/,+A7J I$5;.I#UOBVH63-.(^J4WJM&EU3VYPQ\W!P1,G<
M+#M\0-4.11@A33G];[I>O\SPHT!&RL%#>1$)%!@$%0B9).0)#OD'3@;3H >+
M4P/V!4;DTATD#"/X-F:L?S-#B2H#-Q,<J#0>."/(<!QSB<RR\H!SZ5QY;ZDI
MAL_"CQX'G&Z:3B9RT5P+E %H.,[52;-&PVI$?;(SU]Q<J9.SH^$0+3=> S[$
MG<<3:(E1$71C7!>8[6(K[B3>):CO>1@"'?'[!GK_9K@G@57,#G_,YYW3%1\G
MS'%&@(LM1-*,/2*\HK5#=8GL;#$43D(.,(Q9TU>QX E8JU$=.R_"I&"1&!J<
MGM!,U%#N4:3W&_/E/AWD36;?FX5:0<.55U+,-,\%<](9U;\\AN(A3XZK48;F
M>'_4\4P&SL@=$!G_ %!8S:8G9R?GZO;FW>$_WEZ3+Q]-7QR?7_ GE[?O(N0J
M"#M'.WJ965&;-R?(\NQ\<G9Z3,<"Z>.)>G8VN3@ZB^]/\/YX,@-+>7^Z]?Y,
MXN?9Z?E)_.3\$9*+@^1G.,?1T1$M>WQZ@+"80$C%'$97-Q^EC_I7NASG/#\$
M6#)F>78Z.87$B )67']4%OUD<GYQFHX[$'YV!NEO6E=\.WC+>9F*#IB* )<[
M&M-Q;:*V+_!V2>L(L\IMC&"@3&<-=!S2K8] \("V=6YBE*&\5'S9PS)=C#O+
M#.,IAS"O,7'ID"DAO)A=3-0-^AL3#W.M-QP(7V102IV@0TN9IX&)A9?/_S0A
MS503<H:.AY<TBI*W9+ @@54;1D,QR_@X5AV.*=V\LLLX;(&IN,ZEFK#%)5&?
M9HFS9(QGF&,NH=TZ%M$TS=.IAQ=%I]4@:-LJ>=S6X(DNWV0(G 18<X6(DYK^
M8F!G&N:JZI!&#:,0E&^*OGYRO; /W/J*9L*X'(\; RK'LASO"0JZH:/EVB*W
M *)8PA3421C?*XS/2-,KHLG]^]#O;)WZ)Z)/"IJ,F^^!OGF^)G(*M5$.EI;P
MSN$+F@<$N'0-,]"(4FQ5FD*7,ASM&\HX!R',0Y"*X9],T?@J+HX(N-C34(MY
M\JT>2D:\Z /Z&HQ%NH9  DU[2/:EYI%D=(I1NTTCQRANGG8,6JS!S% FGN/!
M=U9_-B7'J(]3CU$EE7@4G8^%3;$59P_;NDXQ%D=![(M4"844!9H<S%LV(5_Y
M(.K/C\Y_W#W"-817C.&!8#0B%$MIQ#QH,N2$$A$$E,M/81^!W7B<F!JH>#W!
MXJ?[6;H+0+M%!I2,,-J9)QG#6SP20::6@SGEUY7MTT]$M$/UC"#64PFFGP(/
M7#6-JF6J-HY)RE89.$:PD"^B44M+/O?""$3R2ZDW?0*Q3;Z&HC+(*.*K?C#A
MZ1QN957+JP;9^_3)MG!(=Y+ZOWOR/PZTA?%44(7@N %GZ@R2N.49WL)M\ASC
M24FW2/]O9+4\7(L7DS)9JZJ>P4@G?(0*$B-PN%LCF)_&2I2%A]^.[GOZJ3 /
M>?DNB4[W]>J_+MGD<K\ OMA2TK6:;GT<9?#8)(Z!]8-Z_N7]]>57>KD?AVE=
MW4G["'C1X+@AA<W"MD\F#&I0^ 9Z>&4F"F!?E3Z9^^+Y[WSWZN3&&HP?3YA-
MO*? HK7>9*2=18TC%>IC4F<R)$%AUYAT_3*2:&$K;NZ3&: ;1'"S=8MNJ,I6
MZG?$=J"1%$^?K#PTE'N9>#'],U14NIH_'CS>@'?Q88B8SN/C$-.G$$D_R2T*
MW['5\MU(UPRR!$D]1R5C<P@ E8T11TH3V/27*_A45^E9C:$'CF4I;<EFRJR8
M"!8>)$*/.$'1;-VX<,R)D#*M(#09H3,:R5$&U[;<V@>;/3N=JD^H<55LS[>=
M@]V(BEQU)YFYTO>ADX>Q$@#03>R ) 5*XBZR2\0'M?A>K,E=T'>&E4]=N^AT
MAR8S:99:1I>]+(B<N0RE:>:8X7P_&*=Q%?K5(7Z@I3*3IC&T<'^*T\YK)2+
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
M/&ZOIRGS[#[-ZH_2[;3Q,*@MAM++NLS 3?-O6@1[2#-G8P-.L&3N\9>A7'3
M\ZW%=WQ>Q 3S3VCU+U!+ P04    " "Y?GE4?L]I"AT#  #<!P  &0   'AL
M+W=O<FMS:&5E=',O<VAE970Q,"YX;6RU56V/VS8,_BN$-PP=X,5Z<VS?D@"]
MN][6#^UNEW7[K+.5V*AM99+<M/]^E.RXN6)-5Z#[0I,2^9!\+(FKHS9O;:V4
M@_==V]MU5#MWN$H26]:JDW:A#ZK'G9TVG71HFGUB#T;)*@1U;<((62:=;/IH
MLPIK]V:STH-KFU[=&[!#UTGSX5JU^KB.:'1:>&CVM?,+R69UD'NU5>[-X=Z@
ME<PH5=.IWC:Z!Z-VZ^@YO;H6WC\X_-FHHSW3P7?RJ/5;;[RLUA'Q!:E6E<XC
M2/R\4S>J;3T0EO'WA!G-*7W@N7Y"OPN]8R^/TJH;W?[55*Y>1WD$E=K)H74/
M^OBKFOI)/5ZI6QLD'$??E$=0#M;I;@K&"KJF'[_R_<3#64!./A/ I@ 6ZAX3
MA2IOI9.;E=%',-X;T;P26@W16%S3^Y^R=09W&XQSF]?:*>#P$_P^2..4:3_
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
M $U(\.L[[4V-0=A@^KN4+U!+ P04    " "Y?GE4J[J\P^,%  "&#0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6RM5]MRVS80_16,.M,F,[)N=BYU
M;,_$<3OM3--Z<FF>(7 I(@8!&@!%Z^][%B IV4GTU =;)+#7L[L'X$7G_%VH
MB*)XJ(T-EY,JQN9\/@^JHEJ&F6O(8J=TOI81KWXS#XTG622EVLQ7B\7+>2VU
MG5Q=I+5;?W7AVFBTI5LO0EO7TN^NR;CN<K*<# L?]*:*O#"_NFCDACY2_-S<
M>KS-1RN%KLD&[:SP5%Y.WB[/K\]8/@G\JZD+!\^",UD[=\<O?Q:7DP4'1(94
M9 L2/UMZ1\:P(81QW]N<C"Y9\?!YL/Y[RAVYK&6@=\Y\T46L+B>O)Z*@4K8F
M?G#=']3G\X+M*6="^B^Z+'OZZT2H-D17]\J(H-8V_\J''H<#A=>+'RBL>H55
MBCL[2E'>R"BO+KSKA&=I6..'E&K21G#:<E$^1H]=#;UX];>+)%Z*$_'.U;6.
M@#L&(6V!=QNUW9!5FL+%/,(7:\Q5;_<ZVUW]P.YR)=[#0A7$;[:@XK&!.8(<
M(UT-D5ZOCEJ\(343I\NI6"U6RR/V3L?,3Y.]TR.9AR-VSD8[9\G.V?^.X%&[
M/(WGH9&*+B<8MT!^2Y/!V<\_O5XMEV^.NQ2WK5<5.E;\LS9Z(WD*@OA4$:LU
MTNX$-H4[V(M.-(..EQWZ+)+7T@2!Z1<M5K45&KYJ:=L2 ]5Z>!-@")\MS+XQ
M'_'N>3+8>"WO2, \(@PP-16R=JP/(0])V K3?03WK40V$9E,,6<&P^MW@EFI
M: WE?)TOH"F5HB9*JV@F;KTK6A7%7UJNM=%Q]R@B'00(H3S1-K2>BI16TVN8
M4</K<#=+&*\6;VZ?;J=U8*\Y!)$LL6L\%1A7A C,ZF29<U<N1.%*86@C#=,%
M^(Q2[(T+0:\-B4+6D@&1G40ZA0!J$GP7P"NLR;#C1\)42B+5_M6;, 9>Y"I(
M7E  QY/H*JVJW@8CG2/]VB*Z9*I!N= TC\O%%![QU[OGAOL!0/C7]TS*9$A
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
M%E+IW2BI)=Q["=$K$L*(?5*%30W[4*S$ZE3 ".JT.D6-3O?1FQ+?BR1@DW#
MHG$4OB%OTMHX<?(F;]AHWI S;>5,G9SI_^&KGY+PU[\LHC#\M9'#OJ:"/:B\
MY,6!I=PP1#UY9LJ]967&0;)+99(R7ME4:?D?P2Q8-IH7EJGU";UA5C&1R8U<
M9H*)O,S400@S8"NI40E*&\:+%5,0H)DL5G(K5Q7/'%M9Z03G"U:5M.0HFLU&
MBPV'UCAF.@MQKJH,"3 IU\+0=J+R''HZ)0:TX76-HR,Q2!D0P5@L9+%AW#$B
MSB)?0HTZUN. O<NRU@YGGEBQ"FFEG<'>%22L><<MBD1K 3\ 4YX!8EN>58+V
MB6%5:^[(!\[PG!_8$H[9"YU( Q%+87="0'^Y9[E/9**SV#H(#G>M50;H(K4O
M1 8N=$>U))2B(G#>6VUYD?A(T3Z\Y8)E.\%>'J"IU01-Y!4<"[BK-"VT@"B7
M -[%I5L?HS@XQM8S[D52$<*Q4FBCBD)DWF"*JU:(,JF1D,RM<-%&=(PX3X&5
MV%*.0DFI665S!:7%&N!O:Q[1&):+3O*E*J,@.><'["'EQ0:'R.(L-7?P @7?
MN]1<LR>?15^TA*<>B<L5/?M''=\AZ^,__?NP+V$Z$E>SA([/\'O"YM-@-L7;
M^3P8QZ!I@AI.630+D(+-JZ_*\NPT!VTW 2E=)Y-@,C[CJ/.$4S&=<4RF9QPO
M&S-NC8EFL,:3'C6^M JZ+()X_()5BZ-1SNX?&C6[>M$-;QDU.3OC1:/"JY^,
M4'2TQ4D[VC)GT308TQM/\3,!>LGZ_\46]'&7P;ZN?:6>@U -1:YTR-#!2<'"
MOBH!5P,ZJ"B5HUSX'CXJ^<&I@:KN3\#8GSLI_6@R *,IA9M LL, ^:]K7&C8
M 4.%6$OK\$ N*^LDH>(,]Q)]"8E+R(7H1$ N@++$'HEMP.VB-P3LB9;#>TXA
M(*. -]RAS,>BMO[4W$1M"O0;6!'.9E30XGLE[<$C4L.; "4&;HMK#WZ@'A-U
MZ\I^&$[\1GCE47/-90T8I*;@:!EUQ_-]32)"QDH,7I13Q27XLLHTH'R?<5CU
ME "&R$%UXT3*$D&N5H+&*ILZVB.<[]S(1EUD*S0F4" 39E/OJ6OV[[>2Q!OF
M"@%IC\""R.&HH&Z7JPKJ 8?9]XIK0+^KD3X;!]'5=.(6+9>/3^G*:ZLR.#0C
M_PY9- _B7_!\E.9YN-:BTT4TN6$(<?'LEZZL3*Z=>QJX16T%DSK;A[Y501?7
MN2^-/XW'>1->^:[DS$9D$-\@G ?LLSK%]H;<ASXD+/ 1I\;^[>NG]RWYUK5#
MG,TX0E+I(:G)C-!;\@3TE&H%-ON"[VET@0'H(_UH,4.Z$0Y412=93[)3[.FW
M0#)G+I>0GH4JAJ1 Z_]&J[-9 PK U'G$2C3 NA?32TIXEZ"-YR%S*;KEXBPC
MTD+L,8OL1(;.[,>+NBVG1$^?3>17E,?T=?;(QS!X-==J[Q_K9>D*O*X:C!=H
M[P!EDQX970[58Q*X_)SR8BS= %>TPLD'Z\I6H&B$F>-Y)3?V[)"DG@8XR44:
MX)GS BE'$X0;A>>_-J[D_OS+(YPH<_1+ZWF:/,B#/F.: +5XUWJL4UNRHR_E
M9*M#*I$-J$0XJT/NSB20]36-4YR"SFDNDMJY0)*SX= CYX!MH'T+-)0DN=+B
M3%;@*IQ=5OCK0:T#^BUX I3B4QPCXX$]8?[3TDKP?3P5 X=K01E,,@[./[\)
MY#E$/ JJ.  H+YY=5SHWD. >H$#ZUN/?J<.[(-UTM2:+.J!M7DVO3HB@=-[%
MGM?,[X3I7!E2P<A<9L"21DRIQ5;B0R0[M"D-+S@PHD^EDRFZ':_K'G4<_5T_
M]E<7J% *M[\1<5<+2\PM9TCR^B3C4>RZ_?K[O4/9['WH3#5^Z()?FN')#V.&
M?:Z<Q"[_GPVJOZM1_;&%F > CZXSYU_4*/[F.MS?+WE.SVF.Z:KT(Y9^.QG[
MX2Z,!^,(XW(PG>)=' 63>;/7+$\G^<ELL,!\/0_F^(-6$S%,8M$, W\<+**.
M?$\>AX-%O&"S8'J%=[.K@ Z;#J+%G)9Q$,?G71LE@H9F9,+^:%J>&XW.(T"3
M#XNO0CIR[O[&TQ\S=T/29^$@OHK=,YPO\(P&<3QYZ3YBU+G'R87>N-LJ@VX#
MB/=7.NUN>R'VSM\#'<G];=HGKC=0D65B#=9Q,(][3/L;*K^PJG2W0DMEK<K=
MSU1PH (1X/U:X3NP7M ![37AW7\!4$L#!!0    ( +E^>50<6PWY90(  $ %
M   9    >&PO=V]R:W-H965T<R]S:&5E=#$V+GAM;*U42V_;, S^*X0W[.35
MK\2-VR1 TW9;#]V*=H^S:M.V4%GR)&5I__THV74S8 UVV$4B)?+C1TKD<J?T
M@VD1+3QV0II5T%K;GT21*5OLF#E2/4JZJ97NF"55-Y'I-;+*.W4B2N,XCSK&
M9;!>^K,;O5ZJK15<XHT&L^TZII\V*-1N%23!\\$M;UKK#J+ULF<-WJ']UM]H
MTJ()I>(=2L.5!(WU*CA+3C8S9^\-OG/<F3T97";W2CTXY:I:!;$CA )+ZQ 8
M;;_P'(5P0$3CYX@93"&=X[[\C/[!YTZYW#.#YTK\X)5M5\$B@ IKMA7V5NT^
MX9C/W.&52AB_PFZPS=( RJVQJAN=B4''Y;"SQ[$.>PZ+^!6'='1(/>\AD&=Y
MP2Q;+[7:@7;6A.8$GZKW)G)<ND>YLYIN.?G9]6=E$0IX#Q]1-9KU+2_A2@Z/
M355;1I:".-.H' $W V#Z"F"2PK62MC5P*2NL_@2(B-U$,7VFN$D/(EY@>019
M$D(:I\D!O&Q*.?-XV8&4S0&<V80S\SBS_U>Z?P)\]V:1)LGI*[#PM44X5UW/
MY!.TK +#!!K@$BQ=U$I0FW'90//BS:A;C?^[%:C!;OA9J'VLXU,#I=I*JY]
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
MCZYS&_PA@T>G)QL,2%D;OLG"RE!Y91:O6L@IYS"E)<(19ZG57-*E)3)]N4A
MH6HWU?(('9C.305,.0_H&C*LGT2>PJ>KIM0YDH5Z8W<<;(:J/'GM(ERAI4J:
M&XO>$1XB>?P4*5W'<R(,W'NE2S6/5::*F&4J@L(:0%O1 ;*"8ZYCID-?('8[
M8=BD_\_=5@!RYV,_B%1,)<L4(LP0KN:@N)DCX7]T',*7C=(S6DL%'LW&Q_A+
MX_>C&03@O^%P5I3H@\]MTY0];84N0;KC<;G-5?K'1SI[[2I<E: L<0(Z>A%K
MR+0.+IUD R3WX.Y1W:\$1T>3R=F>X%95]",EE"&"^@))+-LB5N1UGML6K^\>
M<,(#Z$N:9O_*6FFP'8;!^&Q&7XR$QAS0"S!OE6]M7(/O(7%4RWXX0K;^>Q3Q
MER&M,WD94WQ.:'HBSRD!%IXS>8:!I!9@15EVTI':&0?@,<64_LC.G4NGM#Z$
M$1KL$-G9].6.UEX 9'1%]$+;A\8(TZI@MU-+W<!YFKEQJA;:Y::MN^8\?Y;R
MMW 1 3:%(8=[U<_'."HA]LM+.AND7>OLJ>[XI/%@]BO][!P=;MT_,!27X9;E
M**C&JTC_M;_(7<?[RY-XO 7>*KN4453R JJCP<DTB:6_67C3A-O,W'@<+^%U
MA<LH6Q' _L+@..T6XJ"_WE[] U!+ P04    " "Y?GE41^UC:%,#   \!P
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
M"RTN4JDI6L09%R_EAKV<&HGCQ5=BA.($WL$U:G0,YUK3QK%Q:UAY<K+6*)?
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
MG4X^7R3@^HGN';)-G**#)9[):-;\"*(+ ;Q?6IZDP0D%QF=U_0=02P,$%
M  @ N7YY5$@'VXD)!   ] @  !D   !X;"]W;W)K<VAE971S+W-H965T,CDN
M>&ULC5;;;MLX$/V5@5ZZ"Z21[:2[16 ;2-(MM@]=!$FW^TQ)(XL(1:HD9<?[
M]7N&DF]!8^Q#(EYF#L^9&0X]WSC_'!KF2"^ML6&1-3%V-WD>RH9;%2Y=QQ8[
MM?.MBICZ51XZSZI*3JW)9Y/);WFKM,V6\[3VX)=SUT>C+3]X"GW;*K^]8^,V
MBVR:[18>]:J)LI OYYU:\1/'O[L'CUF^1ZETRS9H9\ESO<ANIS=WUV*?#+YK
MWH2C,8F2PKEGF7RI%ME$"+'A,@J"PF?-]VR, ('&CQ$SVQ\ICL?C'?KGI!U:
M"A7XWIE_=!6;1?8QHXIKU9OXZ#9_\JCG@^"5SH3TGS:C[22CL@_1M:,S&+3:
M#E_U,L;A_SC,1H=9XCT<E%A^4E$MY]YMR(LUT&20I"9OD--6DO(4/78U_.+R
M+Q>9IO2>GH:LD*OI2:^LKG6I;*3;LG2]C=JNZ,$976H.-W3O;,DV>I4""X][
MSY6.]*C#,_VRL_MUGD<PE'/R<F1S-["9O<%F.J.OSL8FT!^VXNH4((>TO;[9
M3M_=["SB)RXOZ6IZ0;/);'H&[VH?KZN$=_4&WD[<&:CK/=1U@KI^ ^I<%'\6
MNK-H<GEO0J=*7F2XG8']FK.S1]"WAJGS.F6]?&U8#H9>#+$9=(A!UF%2,6YC
MR7JM"L/ADKY8BH"R<DD,C'L?6$R+/H!C"!=I^]ZUG;);G.C6NN*P.R&R;P-%
M1QH'# 7/'JA2>+Y"W9GM*P#VTHO QJZ<U.4(Q&ME^L0_$3V!(V4KDA85\8>9
M02]24!P(4-2Y$#2TD,$ :YM&E\T%/BQ]1QG]+U<7U*@U4\%8V^C8Z$&T5W:5
MQ+;*HH>A6\5W@?BE0],9N:@@S4NZ$%=4;!.Q,4&0^>V@[-V!<&HT)W%O7.AT
M5 ;1;"&W1*0K7NN2J8*)UT4?G<=FUVP#"E19!%HZGF@4\0YL$8=*(W71;,'
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
M>?,J@S!8_S"(ODUVN_61S3M]UORWQ" ;>'WGV7+'@20X_7]7/P!02P,$%
M  @ N7YY5$JZS-]Z!   :PD  !D   !X;"]W;W)K<VAE971S+W-H965T,S0N
M>&ULE5;;<MLV$/V5'=63269H7:A+7$?6C"]IZP=W/%'</D/D2L28!&@ M.Q^
M?<^"E*PTL=N^2%A@<?;L%9QOK;OW!7.@IZHT_JQ7A%"?#@8^*[A2OF]K-CA9
M6U>I -%M!KYVK/)XJ2H'Z7 X&U1*F]YB'O=NW6)NFU!JP[>.?%-5RCU?<&FW
M9[U1;[?Q16^*(!N#Q;Q6&UYRN*MO':3!'B77%1NOK2''Z[/>^>CT8B+Z4>$/
MS5M_L";Q9&7MO0C7^5EO*(2XY"P(@L+?(U]R60H0:#QTF+V]2;EXN-ZA_Q)]
MAR\KY?G2EG_J/!1GO9,>Y;Q631F^V.UOW/DS%;S,EC[^TK;3'?8H:WRP57<9
M#"IMVG_UU,7AOUQ(NPMIY-T:BBRO5%"+N;-;<J(--%E$5^-MD--&DK(,#J<:
M]\+B=QN81G1,RS8K9->TU!NCUSI3)M!YEMG&!&TV=&M+G6GVIW1M@C(;O2J9
MSKWGX.G][O##?!! 2\ '64?AHJ60OD)AE-*--:'P]-GDG'\+,( _>Z?2G5,7
MZ9N(5YSU:3Q**!VFHS?PQOL@C2/>^!6\G7-O0$WV4),(-7D%ZKO0_2A>_Q."
M+JW'K_+>9EH%SE%#H:!0,(K^H=%>QP9 9FN<FN 3"D[EZ&YT?K<FHRJ&T)8<
M.S1<J>2:+W2-?<>;!AL6%:+JVME'57IZIZKZ$T'*FRQ0QB[$LHG7$D+,T+Q,
M3AH#]$Q.QIKCS%8UH^C4QC%70H>48\I4K8,J]5^<)U%7-E<LA:<J"V0<4.-%
M%L<\6 ONL42'*@Z%S<D^@GC-3MO<DY,@07OM;$53"A;50,^LG._3W=>;JW<_
MG:2CCY\\;:S-M[HL27L*["5^&':DJUII)P1!QS2J+)\3TB9:7]O&(<(/C7(!
M)A%95ED1T:..0M>X7)F,VU2<+R]I/!VVA@FALT)31JH_M"/6/65H!JYJ"P?8
M-CZ:75.F7=94/@@H= IXQ^"B L9>4^:$&$79(.[W7#XC8\@*MW1A@)"QAH7J
MWM^5C&32,&DP_65RMDI]NEZW3',DRF'JP&(T);J'X6JYQXR19Q#/D1BNY4C2
M7+($$Y&O6/G&M62030P4(2+2@?>E]5UJ*+>P:&P@?JHQOK^U"[P5;%6\-_^2
M%L>>64EKK)L BWWZ[(.N8E.T.[MJBE4:\5&CGK#6+WVEVKXJ&(%57KABI'"U
M0JYW8R4Y*$:18_*/&1$8]<?3\8SNEE>#7R]NI9:'_8_I["3NG-]=H<><8Y,]
MPWJ71P>"Z!B$3:WP<M+1+)E.4G$+T&E"1]/D9#CMY#'D-!G!9"M/_B%/V_XY
MFLS&W<Z,WB,L$E!P_8#TRN[H9[DW2H;#H:A][_V673= ),2QC2Z7UWWZ6O"_
MQA+MZ/= TLF\3T-,']@E$S!&%\3 O;@:J8^3V<EDY^X!^='T0_]'0WAP\ !B
M>&WB,R\UB$IKW\+][OY+XKQ]0%_4V\^0&^4P-CR5O,959&[::R?83@BVCL_I
MR@9,RK@L\#7$3A1POK9@V@EB8/]]M?@;4$L#!!0    ( +E^>51.!"IA80(
M %H%   9    >&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;(U4VV[;, S]%<)/
M&Y#&L9.N19$$2-(-V\.&H-[E6;%I6Z@NGB3/S=^/DATOQ9JB+[8HD8?G4*26
MG3:/MD9T\"2%LJNH=JZYBV.;URB9G>H&%9V4VDCFR#15;!N#K A!4L3I;/8A
MEHRK:+T,>WNS7NK6":YP;\"V4C)SW*+0W2I*HM/& Z]JYS?B];)A%6;H?C1[
M0U8\HA1<HK)<*S!8KJ)-<K==>/_@\)-C9\_6X)4<M'[TQI=B%<T\(128.X_
MZ/<'=RB$!R(:OP?,:$SI \_7)_1/03MI.3"+.RU^\<+5J^@V@@)+U@KWH+O/
M..BY]GBY%C9\H1M\9Q'DK75:#L'$0'+5_]G34(>W!*1#0!IX]XD"RWOFV'II
M= ?&>Q.:7P2I(9K(<>4O)7.&3CG%N?4W[1 2N(*LOQ70)62\4KSD.5,.-GFN
M6^6XJF"O!<\YVCO(G,X?KWPQ"MAI20UB6:CQNY//^V7LB)W/$><#DVW/)+W
M)$GAJU:NMO!1%5@\!XA)UJ@M/6G;IJ\BWF,^A7DR@726)J_@S<=:S0/>_ +>
M2=PK4(L1:A&@%A>@+E7PI;*]!6G[_UUL'% !4![0C$68@*LQN#%UA)I9L&=$
M4#9"'Q$A/\=I!%-V EW-\QJ80>IYFQM^H "IR2Q;(8[ %2C?2K=3^'Z6@O7M
M8X&>CS[7<_"6KMK )MO!37([@:RF!(.8/3O2\+N7BAV?];M$4X6IMA!2]:T_
M[HX/QZ:?EW_N_:OSE9F**PL"2PJ=36^N(S#])/>&TTV8GH-V-(MA6=/CA\8[
MT'FI2?9@^ 3C<[K^"U!+ P04    " "Y?GE4^)?*<&T$  #M"0  &0   'AL
M+W=O<FMS:&5E=',O<VAE970S-BYX;6R-5MMNXS80_15"!8H62"W;R687J6T@
MEQ;M0XH@WFV?:6DD$4N16I*RXWY]SY"2XK1)T(?$(L4Y<^;,A5H=K/OJ&Z(@
MGEIM_#IK0NBN\MP7#;72SVQ'!F\JZUH9L'1U[CM'LHQ&K<Z7\_EEWDIELLTJ
M[CVXS<KV02M##T[XOFVE.]Z0MH=UMLC&C4=5-X$W\LVJDS5M*7SI'AQ6^812
MJI:,5]8(1]4ZNUY<W5SP^7C@3T4'?_(L.)*=M5]Y\7NYSN9,B#05@1$D?O9T
M2UHS$&A\&S"SR24;GCZ/Z+_&V!'+3GJZM?HO589FG7W*1$F5['5XM(??:(CG
M ^,55OOX7QR&L_-,%+T/MAV,P:!5)OW*IT&'_V.P' R6D7=R%%G>R2 W*V</
MPO%IH/%###5:@YPRG)1M<'BK8!<V?]A 8B%^$MN4%6$KL56U494JI GBNBAL
M;X(RM7BP6A6*_)5XI#V9GO!;6!R-\OXPOOYQE0<08_B\&$C<)!++-T@LEN+>
MFM!X\8LIJ7P)D".B*:SE&-;-\EW$.RIFXGQQ)I;SY>(=O/-)IO.(=_X&WAC<
M.U 7$]1%A+IX ^H5\5Y3[%T0;M4KW\F"UAEZT9/;4_8:LOC<D+BU;2?-$3T4
M]_\FC\=T5 81<"*@SSCSG;-E7P3A&]6A\X*07GSY?'\G6M27%PI_!1+ET$N]
MU*(C%\>"*6"]TZJ6[-.+8"-J*E]R__8RHL^F0IJ8E6)W3!Z5C]U6BKY#&!$.
MT*HD%YVPCT.CBF8Z#4 5- PJ9]M$=?#O.0P))QZM.A+HN*2EZ)JC1Z7K,?0S
MH7A4%-:5,:R#"DWT7MJB9])P()V3IB9> =? HWK"]JB,9XC$C0TQ@33[ZIQB
M/%!)Q[&V;I1J2-'WWWU:+C[^[)D!=2$)6\&' !]RSX+%&#GMC.FE)G\VN)2.
MA$(K!W(*80&?!3ICA6HR4$_KXZG>AX;,P#.A*<YQVVF*H2(Z9?86+\J9N/88
M>"W2@#A#RE5)A2Q14&!)3Z@'1<P9 O@>(7A?]3J"Q.3YP#6%D37,9)"&9Q=]
M[@G#!P,.FB2G_F0*]0!U 5=,8.ZU="4KFHHB@LF=TBK$Z372%;+ER<6U+KTU
M<H>X.9LJA0M]VDC[-?FG5,ZX@4"052V40PGXF!4/2DC(H/E+LF-OM?(H=O0?
MK<<>0\S&IE;KJ!S3QXV6 G,JII I7F]OQ>7\\NJ4*^/L%4M/IL9TP%E(,B01
MPJ(QD1')B3Q#EIA@%'9PSRT$9/1N7W$W1^M@K4["HF,'^CWW8,SGSM.WGA.8
M)L(+2T"E;HNU8TUL#:9@.<%Q4QK,3]93/8^?^/A2'@:?\O#6@&GDGD .QT]*
M-39M"@.-_;(G>5K)VA&EN9-FABETSP(VT"7&71%612-=#5.@/ \094;.".&U
M2R _N8)A4<</#2XDE&"ZC:?=Z5OF.EWAS\?3A] ]_*.BA*8*IO/9QP^9<.GC
M(BV"[>*%OK,!].)C@^\Q<GP [RN+2WU8L(/I"V_S#U!+ P04    " "Y?GE4
M9X//RNT#  #9"   &0   'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6RE5FUO
MVS80_BL';1A:P+%DQ9VSQ#;@N!V6%1V,.-D^GZ63Q98B59**X_WZ'BE9L;LZ
M7_;!-E_NGGON.?+HZ4Z;+[8D<O!<265G4>E<?1W'-BNI0CO4-2G>*;2IT/'4
M;&-;&\(\.%4R3I/DU[A"H:+Y-*RMS'RJ&R>%HI4!VU05FOTM2;V;1:/HL' O
MMJ7S"_%\6N.6UN0>ZY7A6=RCY*(B98568*B818O1]>W8VP>#OP7M[-$8?"8;
MK;_XR5T^BQ)/B"1ESB,@_SS1DJ3T0$SC:X<9]2&]X_'X@/Y[R)USV:"EI9;_
MB-R5L^@J@IP*;*2[U[L_J,OGG<?+M+3A&W:M[6020=98IZO.F1E40K6_^-SI
M<.1PE9QQ2#N'-/!N P66[]'A?&KT#HRW9C0_"*D&;R8GE"_*VAG>%>SGYG]I
M1S"""UBW50%=P%ILE2A$ALK!(LMTHYQ06UAI*3)!]AKN5*8K@@=\)@MO#NMO
MI[%C1AXWSKKHMVWT]$ST40J?M'*EA0\JI_P4(.94^GS20SZWZ:N([RD;PN5H
M &F2CE[!N^SUN0QXEV?P#LF] C7NH<8!:GP&ZEBU'TGUJK>_G->VQHQF$=\^
M2^:)HA-(>"@)EKJJ4>WYL(>R6>!K"Z*U<L&J8:$-+-9+F(R3 ?SRTU6:)C='
M9?8>Q[B#8#*Z@5U)AC9[?^;)&,H[0#0$;%TWCI=:=,=,T%IN*:ARD (W0@JW
MAXI<J?/A>:;?0?\?KB(KN6E\;02+Q820N4CY$N!$DY""9,9\ZGD/+2BMLH8-
M^08(;AW'N]:AH\KO\%4IA$*5"910:RM\GVFS>UC^N6!5E..VR/@<EUUR)E2C
M,P)#0W(&5>OC:<";^P^KQ8,?OH70KK*F:B1Z50F-XG1MD+,VNA"L%T=W+SKZ
MQ$>3F\#\XG&X'G*;W5B1"S3B($")3\3[#C9$RN]_YM8(3D.PY\"GE2E9A] ]
M?3TTU+@''U=Q67NJH)^X0J'UP9YIVE,(+H]6Y*EZSQ-&A9#\_5(&UL8U1OFE
MD%?@5! ? !;W<V.$S45HY -O\>BP'/2F2GB.'UFB7%=A><&=DQT%AMF=(>FE
M\Q^>+E%ACJ=,#66:N]Z_@9/C@VZ=+X%I0M7:,K (C>H-PR%E*16%<C!N[TC/
M_&9:@C;FO@?@591.4&?]<@)/N>0B#V7J0P40-KPX /TG$@L=JML9GD9*D]%O
MWL*WQ"'?%S](C@\/UU;DW_EQS7X>#^%'?2\^>FXJ,MOPJ%H(M[)]>?K5_MU>
MM,_5BWG[Z']"L_4W1%+!KLEP\BX"TSZD[<3I.CQ>&^WX*0S#DO][D/$&O%]H
M?L"ZB0_0_YN9?P-02P,$%     @ N7YY5&#7(+"V @  U@4  !D   !X;"]W
M;W)K<VAE971S+W-H965T,S@N>&ULC53;;MLP#/T5PNA#"W3Q)>EE11*@:3=L
MP#H$S2[/LDW;0F3)E>2X_?M1LN.F0%/L(3$ED8>'E [GG=);4R%:>*Z%-(N@
MLK:Y"4.355@S,U$-2CHIE*Z9I:4N0]-H9+D/JD681-%E6#,N@^7<[ZWU<JY:
M*[C$M0;3UC73+RL4JEL$<;#?>.1E9=U&N)PWK,0-VM_-6M,J'%%R7J,T7$G0
M6"R"V_AF-7/^WN$/Q\X<V. J297:NL7W?!%$CA *S*Q#8/39X1T*X8"(QM.
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
M"Z/K@.8.77N-+;[NF^?+3<!W"*:+? "6&O14(&,(K8B? &/R,\P>*BUS,G8
M!?K>"K>/80V*2O2]Y8")8 89*ZL3RJ-Q;S@+F7!\)'NP$+C;$#AX1-D25-QA
MR+"#J,9(-IJ#S($&QYW2W[C1UX[8.6;0HI1[7K!!$W+"ML;D]3:SX$2CK3CF
M1*=;F0^A[^..+_/*MO"!B3%V3_0XP]'R(<F>6PQ_#:D_X/#O"N!T**W.BU:%
MOHYR<H/;LWI@N-"Q>"-1963/@.(RAD_;^Y#_]?9VNH**V*_=/A#=_OY<S/NS
MH38RS:WP[[XXO%4>AEP=OOR$X@HASXN>>$):.@L%-%5V#)]["6]T$ 'AJ/[/
M,QD"U84!XO>/;&-X$=[;Z8F\]>,G]R755:1Z" Q!L,^9UED(1_X.\M9XHA[;
MOZD87FM7R8O149,IPX"T$$+83Y'I=)K!ZW[T/(OW _P+FM*G2E+!JK/XP_L(
M3#\4^XW331A$.^UXK(5EQ=\19+P WQ>:A]&P\0:F+Y/5/U!+ P04    " "Y
M?GE407TG2G$"  !K!0  &0   'AL+W=O<FMS:&5E=',O<VAE970T,BYX;6R-
M5-MNVS ,_17"3QO0U8F3KD.1!&C:#=M#BZ#=Y5F5Z5BH+'H2TS1_/TIVW YH
M@KY8XNWPD!8YVY)_##4BPW-C79AG-7-[D>=!U]BH<$HM.K%4Y!O%(OIU'EJ/
MJDQ!C<V+T>ASWBCCLL4LZ59^,:,-6^-PY2%LFD;YW1(M;>?9.-LK[LRZYJC(
M%[-6K?$>^5>[\B+E TII&G3!D ./U3R['%\LI]$_.?PVN VO[A K>2!ZC,*/
M<IZ-(B&TJ#DB*#F>\ JMC4!"XV^/F0TI8^#K^Q[]6ZI=:GE0 :_(_C$EU_/L
M2P8E5FIC^8ZVW[&OYRSB:;(A?6';^XXRT)O U/3!PJ QKCO5<]^']P04?4"1
M>'>)$LMKQ6HQ\[0%'[T%+5Y2J2E:R!D7?\H]>[$:B>/%+3'"^!P^P1UJ= R7
M6M/&L7%K6'ER<M<H/X'#!=Q*CP^:3V!%UN@=?$BGP?!QEK,PC'ERW;-9=FR*
M VS&!=R0XSK 5U=B^3] +J4-]17[^I;%4<1KU*<P&9] ,2K&1_ F0[\F"6]R
M &]?W!&HZ0 U35#30ZU_3SO?ZN%QV)\UPA4UK7([J%60)\KHY>5@"5PK!N(:
MO<Q3_-MV!R:$C9C4"Y' RI7*ET&>HK6 )@74Z@G!D;P]@3/*@I$46N <& Z@
MR04A7(JUA,HXY71T:BF8.'TGDC#(H 2@"F2C>!6U(GG0*M10R7*0FD5,.1TQ
MJ+85>DP)_B7D]*W.YZ\&H$&_3F,>24E)W2P,VF&37'8#].+>K:$;Y==&F%FL
M)'1T>GZ6@>]&NQ.8VC1.#\0RG.E:RS9$'QW$7I&,5"_$!,-^7?P#4$L#!!0
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
M"PS"")X$UY6"=[S XE\ W\@9-45'3:OH*N(&\RG$X02B( JOX,5CC6*'%U_
MZZ7Y1]WJ"F0R0B8.,KD >:Z&YTIW'>68.1_OBBB+^)GPUDP8A/ &PF02SA)K
MQ)/'60@WL]FM*4QLKORNWPX>'\:X<]+\D^ZJ41[<#"EP[= WVK@ZCNFR[\Z_
MX?V,/Q%YH%P!P]*D!M.W]Q[(?FYZ1XO&]>I>:-/YSJS,4X/2!IC]4IA^'1Q[
MP/AX97\ 4$L#!!0    ( +E^>53$54,U=0(  $8%   9    >&PO=V]R:W-H
M965T<R]S:&5E=#0W+GAM;(U4VV[;, S]%<+80PNXM27'N2$)D+0K-F#=BF:7
M9\5F8J&VE$G*TOW]*-EQ.Z M^A"3E,C#0X;4[*C-@ZT0'3PVM;+SJ')N/TT2
M6U38"'NI]ZCH9JM-(QR99I?8O4%1AJ"F3GB:#I-&2!4M9N'LSBQF^N!JJ?#.
M@#TTC3!_5UCKXSQBT>G@7NXJYP^2Q6PO=KA&]V-_9\A*>I12-JBLU H,;N?1
MDDU7 ^\?''Y*/-IG.OA*-EH_>.-S.8]23PAK+)Q'$"3^X!76M0<B&K\[S*A/
MZ0.?ZR?TFU [U;(1%J]T_4N6KII'XPA*W(I#[>[U\1-V]>0>K]"U#5\X=KYI
M!,7!.MUTP<2@D:J5XK'KPWL">!?  ^\V46!Y+9Q8S(P^@O'>A.:54&J()G)2
M^3]E[0S=2HISBZ_:(7"X@&MT0M:@MW"%AE0%*U$+52"LPW LBT(?E+-36--@
ME(<:O>^-5-+AQ1?J; F?E1-J)S=TM;06G86S[X(L>SY+'''U&9.BX[5J>?%7
M>#$.MUJYRL)'56+Y/T!"1?:5\E.E*_XFXC46EY"Q&'C*V1MX6=^Y+.!EK^"U
MI26G;M@W( <]Y"! #EZ!?']G7VKHV]C?7(4&9(G*R:WTW$$^H8J .H4/P&-.
MO0\R9<"RG'XCF,23+ 66QM0[,H:C,7U'PPEP%J=I>A*,QQ-&(HO3C$&>Q^-A
M#ODP9OD$SK)QG.?\G!0>L^'PG)*P49RQS&?+XLDD>ZF%R;/9;M#LP@9;",/8
MCGE_VC\2RW8WGMS;%^96F)U4%FK<4FAZ.<HC,.W6MH;3^[ I&^UH[X):T4.'
MQCO0_5;3MG2&3] _G8M_4$L#!!0    ( +E^>50O)+5F+P(  ,T$   9
M>&PO=V]R:W-H965T<R]S:&5E=#0X+GAM;'U4VXZ;,!#]E1'J0RNE 0R;;"*"
ME,M6[<-6T::79P>&@-;8U#8E_?O:AM!4VN3%>,8SQ^>88R>=D*^J1-1PKAE7
M*Z_4NEGZOLI*K*F:B@:Y62F$K*DVH3SYJI%(<]=4,Y\$P<RO:<6]-'&YO4P3
MT6I6<=Q+4&U=4_EG@TQT*R_T+HF7ZE1JF_#3I*$G/*#^WNREB?P1):]JY*H2
M'"06*V\=+C>QK7<%/RKLU-4<K)*C$*\V^)*OO, 20H:9M@C4?'[C%AFS0(;&
MKP'3&[>TC=?S"_HGI]UH.5*%6\%^5KDN5]ZC!SD6M&7Z172?<=#S8/$RP90;
MH1MJ P^R5FE1#\V&05WQ_DO/PSE<-<S)C08R-!#'N]_(L=Q13=-$B@ZDK39H
M=N*DNFY#KN+VIQRT-*N5Z=/I5Z$1"'R$'6I:,1 %;%&:*8<-991G" =GCG66
MB99KM82#,4;>,K2U)BM;S.'I;%RB4,'[;_3(4'U(?&W8V3W\;&"RZ9F0&TQ"
M L^"ZU+!$\\Q_Q_ -[)&;>2B;4/N(NXPFT(43H $)+R#%XUG%3F\Z 9>+\V_
MZ%=W(.,1,G:0\0W(>V?YUA'>1[L@X("PA'<0S>P X820!UC$,UC,( QM8D;F
M9ES$H2D@D\5C; LG01"]I<N_LEB-\N0ND@+GB=YM8W:\J^O>HO_*^XO^3.6I
MX@H8%J8UF,X?/)#]Y>D#+1IGV*/0QOYN6IKW!J4M,.N%,*8= KO!^(*E?P%0
M2P,$%     @ N7YY5,NG?APQ P  P@<  !D   !X;"]W;W)K<VAE971S+W-H
M965T-#DN>&ULK55=;]LZ#/TKA+&'#O!BV9;CN$@"K.UZ;Q^V=<T^GE6;B879
M4B;)R_;O1]FNEPYKNP%[H4F)/"*/*6IYT.:SK1$=?&L;95=![=S^-(IL66,K
M[$SO4='.5IM6.#+-+K)[@Z+J@]HF2AB;1ZV0*E@O^[5KLU[JSC52X;4!V[6M
M,-_/L-&'51 '=PLW<E<[OQ"MEWNQPPVZ#_MK0U8TH52R166E5F!PNPI>QJ=G
MW/OW#A\E'NR1#KZ26ZT_>^.J6@7,)X0-ELXC"/I\Q7-L&@]$:7P9,8/I2!]X
MK-^A7_:U4RVWPN*Y;C[)RM6K8!% A5O1->Y&'_['L9[,XY6ZL;V$P^C+ B@[
MZW0[!E,&K53#5WP;>?B3@&0,2/J\AX/Z+"^$$^NET0<PWIO0O-*7VD=3<E+Y
MG[)QAG8EQ;GU&^T04G@![SIA')KF.]R@I9(LZ"V\W:,1GCT+)Q^4Z"KIL'I^
M>N1\*950I10-7*FA13S7)^_%;8/V^3)RE*,_*2K'?,Z&?)('\HD3>*V5JRV\
M4A56]P$B*FZJ,+FK\"QY%/$"RQFD<0@)2^)'\-*)L;3'2Q_ &TJ+-G0]JHZT
M1R#Y!,E[2/X Y!-T_H[%1P']33ZU>U'B*J"K:M%\Q6 -TQ\\^G^^:8!.ZMFA
MXXUU=[NPP5*KR1G>U]+\M"YU9UP]F6]H?FP$T0'/(&9A,>=>2<(Y&Y4L3P:E
MB#G\9[2U<&WT5CJ8AP7/(0_S10:+D.4IR9CZP$->J5*WU* A2SA)GLR!APGS
M,DYC>"6,DFI'4)3"N6Y;ZKU-+0S"R85L.M^LP&:+E$3!(9[%F1?IDTRP?\@$
M\W4OJ+I\6.!Y,1#!8O8K$8O45U9DC'1>>%*2>7:?B)@SB,.4BB JT]230ES]
M(1&<!!U!&ALH>8*(N/AW1.1IWP!QN.#S@0!>\'&%?N4O3.34!GF8,48R)<;R
M<$%]<Y^)M""9)1G)G&5$7)H5?\-$T8O"MT0.O[O&T=%<;='L^M?#0JD[Y881
M.ZU.#]3+82[_=!]>M]?"["2-T0:W%,IF>1: &5Z,P7!ZWT_I6^UHYO=J38\L
M&N] ^UM-DWHT_ '3L[W^ 5!+ P04    " "Y?GE4+V G"Z\"  "L!0  &0
M 'AL+W=O<FMS:&5E=',O<VAE970U,"YX;6Q]5-MNVS ,_17"V$,+.+4M)W%2
M) &:7K !ZQ"TZ_:LV(PCU)9<26[:OQ\EIUX*-'DQJ0L/#RD?SG9*/YLMHH6W
MNI)F'FRM;2ZCR.1;K+FY4 U*.MDH77-+2UU&IM'("Q]45Q&+XW%4<R&#Q<SO
MK?1BIEI;"8DK#::M:Z[?EUBIW3Q(@H^-!U%NK=N(%K.&E_B(]JE9:5I%/4HA
M:I1&* D:-_/@*KE<#MU]?^&/P)TY\,%5LE;JV2U^%/,@=H2PPMPZ!$[F%:^Q
MJAP0T7C98P9]2A=XZ'^@W_G:J98U-WBMJK^BL-MY, F@P UO*_N@=M]Q7\_(
MX>6J,OX+N^YNQ@+(6V-5O0\F!K60G>5O^SX<!$SB(P%L'\ \[RZ19WG#+5_,
MM-J!=K<)S3F^5!]-Y(1TC_)H-9T*BK.+7\HB#&$ *TT/K>T[<%G [4LK&FJ]
MO>SW0UA57-K/QW#VFZ\K-.>SR!(9!QGE^\3++C$[DCAA<*^DW1JXE046GP$B
MJJ(OA7V4LF0G$6\POX T"8'%+#F!E_:M23U>>@2O*RUZ)!T4+7DG((<]Y-!#
M#H] GFSF5ST\"><$>VD:GN,\($4:U*\8+(#Z@/4:==\+]XGAITOV#9)P/(V]
MS=@(EJVH"B%+XZF(NM'J%1T9 \DP3#+FS"A-X*[54MA68PC8O[Z+L4H1K1*2
M<3@>Q\YDHQB\N =J,W@R]'L-IY!F&5PK::QNO1P'0@XH64FT#4RF$QBQ#-(T
MG(RGSDR3&*[RO*W;BELL2&=48"ZX5_(98^$D9N?>&4V&YY]_WIY?")*F&I6:
MA/$XZYR4C;]ZQ^A 037JTL\) [EJI>W$U._VH^BJ4^#_Z]T<N^>Z%-) A1L*
MC2^R40"ZFPW=PJK&ZW&M+*G;NUL:IZC=!3K?*-+D?N$2] -Z\0]02P,$%
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
M\\N:/C74#D#GE:+.& P78/PF\S]02P,$%     @ N7YY5(G+0I+T @  1P8
M !D   !X;"]W;W)K<VAE971S+W-H965T-30N>&ULG57;;N(P$/V54=0'D&AS
MAX( J?2B[4-W*Z"[VD>33$C4Q&9MI]"_W[$3TE9JT6H?L#WVS/&9X\PPW0OY
MK')$#8>JY&KFY%KO)JZKDAPKIB[$#CF=9$)63),IMZ[:262I#:I*-_"\H5NQ
M@COSJ=U[E/.IJ'59<'R4H.JJ8O)U@:78SQS?.6XLBVVNS88[G^[8%E>HGW:/
MDBRW0TF+"KDJ! >)V<RY\B>+R/A;AY\%[M6[-9A,-D(\&^,^G3F>(80E)MH@
M,)I>\!K+T@ 1C3\MIM-=:0+?KX_H=S9WRF7#%%Z+\E>1ZGSF7#J08L;J4B_%
M_ANV^<0&+Q&ELB/L6U_/@:166E1M,#&H"M[,[-#J\"\!01L06-[-19;E#=-L
M/I5B#])X$YI9V%1M-)$KN'F4E99T6E"<GG\7&F$$YW#/$U$AK-D!U016]/AI
M72*(#&ZS#*UV[WQ@R2ANB8G@25$6S"K<6[--B:H_=34Q,_ANTK)8-"R"+UCX
M 3P(KG,%MSS%]". 2REU>07'O!;!2<0;3"X@] <0>(%_ B_L= HM7O@%7I.:
M>]1%G8",.LC(0D9?0/Z/QI])>_(64]03M6,)SARJ6H7R!9TY_$8F%: 1&T@J
MK#8H.[G,X-'@C^$.4Y2LA*)AI8D5'J@A* 2F0><(2C-=:R%?01JZ9Q ,8HH^
M W\P]N/&IN==:7/Z!H,*HN@2PN$8>GX0]8%JC"J(?W3ID>B6H\'N$Z3G>Q#'
M'HPO8[A=WP^H%'B=46G7LN!;*L>T;JN=IY9M(C$M-"$-^] ;T6_<IX2Q,IBX
M8UJVWZZ6C!I-LZ2P<PB&(?2"(84]K9JJ #K+/K+LC0FN%\9]B,=PG3.^-3DV
M#Q>.?8(YAQ^DD@239M@G<RTTZ7D&T2 8A32' R\*[.S'H\^^*O==<5<HM[:%
M*4A$S753Y]UNUR6OFN;PYMZTV <FMP574&)&H=[%*'9 -FVK,;38V5:Q$9H:
MCUWFU.E1&@<ZSP2UB]8P%W3_'?._4$L#!!0    ( +E^>52_R@9H70(  $$%
M   9    >&PO=V]R:W-H965T<R]S:&5E=#4U+GAM;)U4VV[;, S]%<+8PP9X
M]37-!8F!IMFP/G0HVF[#'A6;B8WJXDE*T_W]*-EQ,Z )AKW(I$0>'AZ+FN^5
M?C(UHH47P:59!+6U[2R*3%FC8.9"M2CI9*.T8)9<O8U,JY%5/DGP*(WCRTBP
M1@;%W._=Z6*N=I8W$N\TF)T03/]>(E?[19 $AXW[9EM;MQ$5\Y9M\0'MM_9.
MDQ<-*%4C4)I&2="X6017R6R9NW@?\+W!O3FRP76R5NK).3?5(H@=(>186H?
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
M)X%"!Y!_RTEI>D,7&'X[LY]02P,$%     @ N7YY5'C_JO-. @    4  !D
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
MM[1945D#>M](&L].L0'Z73W_#5!+ P04    " "Y?GE49T)0";H"  #1!0
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
M)?)1;IEEZZ56!]#.FM#<AY?JO2DX+MVC/%I-MYS\[/I.681X E_@AFG)Y=[
M/6IX+)G&!3Q2#>2-0%#%B?L!;)CA&3"9PY:+QF(.%T]L)]!<+D-+T3F.,.LB
MV;21))]$$B=PJZ0M#=S('/._ 4*2U6M+CMHVR5G$+69#&,4#2*(D/H,WZG,U
M\GBC3_!::>$Q*>8,9-I#IAXR_03ROQ-\*J]G*5Q7+TS-,EP%U+8&]2L&:W@J
M$0HEJ">)$JQ31CV6*9EQ4@:6KF53H696:<_O3G*4BFK0GS6&7MLJR)C(&L&H
MBG9]K'E7#'A45),BTY:4>PNW1+3$<[CK22ZX)!+5&$(PEW!' XG+3%54GNE@
M.IM!' VF\YG?)5/8?HCEV?<>$;)7 MMCRV4&74BCP22=NG4\HW5*_#Z9- T
MBX+&@\L^=5KV JIVL\) /"(>B&=]7;>(#F02N76:.*C1_/W5>HU'VG08C2$9
MSL<P&LXG)PV/B2+3U)FFSC2%4X45?NAQ2MG>3S(#F6JD;=N]/^V'Y54[(][-
MVTE[R_2>DTB!!;E&P^DX -U.KW9C5>TGQDY9FC_^LZ2!C]H9T'VA:&IT&T?0
M_X6L_P!02P,$%     @ N7YY5 A>[XAW @  R <  !D   !X;"]W;W)K<VAE
M971S+W-H965T-C8N>&ULM57;3MPP$/V549Y:B9++7KAH=R46J(I4JA4KVF>3
M3!(+7X+ML"#Q\;6=K%FDDN6AO"0>VW/FG)ED9K:1ZE[7B :>.!-Z'M7&-*=Q
MK/,:.=&'LD%A3TJI.#'65%6L&X6D\$Z<Q5F23&-.J(@6,[^W4HN9; VC E<*
M=,LY4<]+9'(SC])HNW%#J]JXC7@Q:TB%:S2WS4I9*PXH!>4H-)4"%);SZ"P]
M7::)<_ W?E/<Z)TU."EW4MX[XZJ81XECA QSXR"(?3WB.3+FD"R/AQXT"C&=
MX^YZB_[=B[=B[HC&<\G^T,+4\^@X@@)+TC)S(S<_L!<T<7BY9-H_8=/?32+(
M6VTD[YTM TY%]R9/?2)V'-+I.PY9[Y!YWET@S_*"&+*8*;D!Y6Y;-+?P4KVW
M)4>%J\K:*'M*K9]9_)(&(85OL.[* K*$-:T$+6E.A(&S/)>M,%14L)*,YA3U
M*:R4_2J4>08B"KA\:&ECZV3@RP4:0IG^.HN-I>8"Q'E/8]G1R-ZAD69P+86I
M-5R* HNW +'5%(1E6V'+;!#Q O-#&*4'D"59.H W"HD:>;SQ.WC+EK+"I<%I
M#L85;Y1\1"=?PPM<4T%YRP?"C4.X\6"X;8H/8,5<'=YD^@!N-98M@Y^TQ'\E
M>Q@[G< S$J4':$X"S<E_R IYVI.5:0@W_<2L#&./D[U9.0HTCP:A7G^)CWP2
MQP'U^!/%#V./]FH_"2Q//JY];^'3Y+5/)9^H?@]X.E#[>*>Y<E25'R$:?%OL
M^FS8#6/JK&O.K]>[&7=-5$6%!H:E=4T.C^S/I;JQT1E&-KY5WTEC&[]?UG;4
MHG(7['DI;;ON#1<@#._%7U!+ P04    " "Y?GE4[TN7BHH#   U#0  &0
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
M@PM,4#7-L)D8N7']Y%4:[$YNN,;_!R@;@,^7$K';B6U1W1\I^P]02P,$%
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
M,<&X57.7:29&5NXZ\"0-=A8WS/'^!\H:X/I&8M6T$WO#Z&Z4R_\!4$L#!!0
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
MB30"L+\24 K-Q#0L;8,Z_0-02P,$%     @ N7YY5.]Z2<1.!0  Z!H  !D
M  !X;"]W;W)K<VAE971S+W-H965T-SDN>&ULO9E;3^,X',6_BE7- TB4QI?<
M4*D$[>PN$C-"L.P^F]9MHTGB3N+283_].FF(V_BR)2OQ DUR[)R_'9]?+N,=
M+WZ4:\8$^)6E>7D]6 NQN1J-ROF:9;2\Y!N6RR-+7F14R,UB-2HW!:.+NE&6
MCI#G!:.,)OE@,J[W/123,=^*-,G90P'*;9;1XNV6I7QW/8"#]QV/R6HMJAVC
MR7A#5^R)B>?-0R&W1FTOBR1C>9GP'!1L>3VX@5=3'%0-:L5?"=N5![]!5<H+
MYS^JC;O%]<"K'+&4S475!97_7MF4I6G5D_3QL^ETT)ZS:GCX^[WWW^KB93$O
MM&13GOZ=+,3Z>A -P((MZ385CWSW!VL*\JO^YCPMZ[]@UVB] 9AO2\&SIK%T
MD"7Y_C_]U0S$00-(+ U0TP"=V@ W#7!=Z-Y97=:,"CH9%WP'BDHM>ZM^U&-3
MMY;5)'DUC4^BD$<3V4Y,OG/!  %#\%#(2Z,0;X#F"_#UYS;9R,D25VK_0TIS
M<7P4O+R!>SZG]82<S9B@25J>R\Z>GV;@[,LY^ *2'/RYYMM2MBO'(R$=5^<=
MS1MWMWMWR.)NQN:7 ,,+@#P$#<VGIS?WCIN/Y#BU@X7:P4)U?\32W[VLPE3$
MOE50MZK6S>L$!K$\X>NA58,H1'XK.C*$6T/8:>AVFZ2+)%^5];S<99N"O[)J
M9LH+\'O!2^.0[[OT#XT0::5CUZ3R,33[):U?XO3[C<[7<E?1N<H<9HEN(PB"
M[MB:5*'OF<WZK5G?:;:.M"%?#I]+!F[*D@F305\[-2%QQYZNP6%H-A>TY@*G
MN2G/2U%L]UDH%YE<IJN"E:YY#S0741QUG.H:'UF<AJW3T.GT/4 N3 GBL!OJ
M@X:CH#NT)E4,+3,?M98CI^6;^7R;;5,JV +,F,3C/*DS[J+:2MF>/[*,FXP7
M(OFG.=8I].*X4E.)D69^B%#D=9>B4>9'Q%QDW!89GS0OM4VF)B27]PYGN<1"
M*;E0'8/>N<E\K*\YZ 5AQ[M)A5%@M@X]12W/:?[Y\NFR-C>E.5U01[;# Q+"
M7NG>-#NL(4"P4^=_B(XM*=Y -W!ZY7O3YY$5GVB&32J$+8X5D*";2!]/>&@B
M3>!UD\DLP\AB6!$)NI%T6LI#G3 $:D.JBW!@NP84A: ;0SV2'AJ@!+NI8A!A
MV[I45()N+/4->ZB#1T9<C+N>33(8VJY:A2CH9M1G!3[4<36$$0RTB]VD"V-L
MB7RHP ;=9/N_H0]U%A%R<!?;V#>H$(XMYA6PH)M87_-56GFK9T(^&A4T35S1
MCQ1.D!LGUAM[3P_)L#M9)I$-SDC1"+EIU"OZD4XA>=-$NH8-*D(LBP@=/!RY
M8?7QZ$<Z@T*_FU,FD2U5D>(4<G/JM-A'.G2TQSJ7Y-B<8A)R,ZE'Y".=/=I
MZA*;4P4GY(93W[Q'!D+)'.PZ-JFBR&):00JY(?59:8]T6@TA#+3E:)#%H2U
M%-/0:<]=?:,>&1ZM GUU&E0QM)E7G$)N3MT]?KV_^3YSA;O"!G)CPQKN^K.)
MM-ZM3Q<19%DV6/$&NWG3[[V-SAF"2/>!RZ3R ]M[)H4C[,;1Q\,=ZY2!V.O&
MIU'E6UXY8,4B[&;1:?&.=;3@+MT-&FBY3<8'K^W<].D1\%CG#-'(;A+%%E9B
MA2/LQE'?D,<Z< *BO;LSJ2)BN5G$BDS83:;/"GFL,VJ(2:A5:9(%H>U*4BS#
MISUP]4WYIOO#U](HUMY=&U18?^P:'7R&J+X!?:/%*LE+D+*E;.9=AK+Z8O]9
M9;\A^*;^,O'"A>!9_7/-Z((5E4 >7W)90+-1?>QH/VY-_@502P,$%     @
MN7YY5%;"ZCK9 0  -P0  !D   !X;"]W;W)K<VAE971S+W-H965T.# N>&UL
MC91=:]LP%(;_BA"[:&&-_)%THSB&-F9LL(W0T/5:<4YB47UXTDG<_?M)LFM<
M:$IO;!WI/*_/>R2YZ(Q]<@T DF<EM5O2!K&]8<S5#2CN9J8%[5?VQBJ./K0'
MYEH+?!<A)5F6)-=,<:%I6<2YM2T+<T0I-*PM<4>EN/UW!])T2YK2EXE[<6@P
M3+"R:/D!-H /[=KZB(TJ.Z% .V$TL;!?TMOT9I6'_)CP1T#G)F,2G&R->0K!
MC]V2)J$@D%!C4.#^=8(52!F$?!E_!TTZ?C* T_&+^K?HW7O9<@<K(Q_%#ILE
M_4K)#O;\*/'>=-]A\+,(>K61+CY)U^?.YY341X=&#;"O0 G=O_GST(<)D)X#
ML@'(/@KD Q [Q_K*HJV*(R\+:SIB0[97"X/8FTA[-T*'7=R@]:O"<UC^-@AD
M0:[(3Z,/5PA6D0JV2"XJ0"ZDN_1+#YN*7'RZ+!CZ#P:,U8/X72^>G1&OH)Z1
M//U,LB1+W\!7'\>3USCS-D>OV>@UBWKY6;UHZ1VE?%3*H]+\C-+K9KW5F)Z_
MCGRX2:?2.SA-O;^7T1?%)ML:KM0O;@]".R)A[YED]F5!B>V/:1^@:>-.;PWZ
M<Q.'C;_98$."7]\;O]M#$ [/^*\H_P-02P,$%     @ N7YY5*W[8SK_ 0
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
MNH_YEG7WJ"=:5/8]70B-K[,=YMAP01H [B\%OJG-Q!S0MO#)/U!+ P04
M" "Y?GE4*4WJUR\$  "*$   &0   'AL+W=O<FMS:&5E=',O<VAE970X-BYX
M;6S56&UOVS@,_BM$T \;D-66'=O)D ;(2W>W#^N*OFS81]5F$F&VE9.4I+U?
M?Y+L.(GM!!V&W=V^-!9-TGP>4A+9X9:+[W*)J. Y2W-YU5DJM7KO.#)>8D;E
M)5]AKM_,N<BHTDNQ<.1*($VL498ZGNN&3D99WAD-K>Q6C(9\K5*6XZT N<XR
M*EXFF/+M58=T=H([ME@J(W!&PQ5=X#VJQ]6MT"NG\I*P#'/)> X"YU>=,7D_
M(X$QL!I?&&[EP3,8*$^<?S>+C\E5QS4188JQ,BZH_MG@%-/4>-)Q_%4Z[53?
M-(:'SSOO'RQX#>:)2ISR]"M+U/*JT^] @G.Z3M4=W_Z))2 ;8,Q3:?_"MM1U
M.Q"OI>)9::PCR%A>_-+GDH@# Q*>,/!* Z]NT#MAX)<&_FL->J5!SS)30+$\
MS*BBHZ'@6Q!&6WLS#Y9,:ZWAL]SD_5X)_99I.S6ZX0JA#^_@\\KD0<*;&2K*
M4OE6RQ[O9_#FXBU<@ -R205*8#D\YDS)[H'@8<G7DN:)%EX<K8>.TB&:#SEQ
M&<ZD",<[$0[QX!//U5+"=9Y@<NS T=@J@-X.X,0[ZW&&\27XI N>ZY&6@*:O
M-W=;S&>O-B>#,VC\*EV^]>>?]&>3<\93K_+4LYYZ)SS=F_2],ULF@2G/]#DB
MJ=V)8R%HOD"]MQ4\O<"AWBU]L>+QEHJD"S?K[ D%\'FA)&&\5DLNV-_UQ!5Y
M*N();#SF.-J,>J'.R*8%1%"!"'XUB++N]<-:2:6KEN6+';0V%$$#1>!5((J*
M:JJ$@V.5V5DO1U2$%17AJZFH(.Y9Z,+U,XJ8233Y*D!WX8$^PP1SG#/5AK7X
M8G@0I5\#,FVJ1#6H30W/;X<:55"CGX5J*@';($4-XDD8UC!%C8A)Z-90M?@A
M)V#U*UC]?ZV8_] 6RA[.MR@8UZ^^VAM0FXPW*/2-7JB OC00/E FX M-UVV4
M38NHHR,Z+DG4#G90@1W\7 YO>+Y!:0,NL$VY5%JJX$5W0W<8\T5N3IHNC#.^
MSEOK=]!(DM</V^,F[O["=,]&?IVM4OZ""/<H-BS&(A\P:>:M!D$>OZWP?#O"
M P]<;\E#P6>=,'VG(MS@LX*'+:8;+&_)U@O6;99O=.)P(0=M OEM4)<U#;KQ
MVUD8WZUDG$>EVXVLA<ACCKP]1][_F2-/ZU/17A->LR9([T1-['L1XO\&>'^D
M&L[C\?31TB#PF)M]=T5^>7M5'>:[F_OH//^8*\'T^!6?/+@G98B'60\&I';9
MM2CY44UI1IJ]FQ^<JI]]\T;^H^[M-=P$S1T1#((Z.2U:).K7V6EJ>4%0[P:<
M@R$M0[&PPZZ$V%Q>Q3A32:N!>FS'R)I\8@9M._SMW113^B<J%AHWI#C7+MW+
M2 <FBL&W6"B^LJ/@$U=ZL+2/2Z0)"J.@W\^Y'@?+A?E ]>^'T3]02P,$%
M  @ N7YY5#U:6##A P  T0\  !D   !X;"]W;W)K<VAE971S+W-H965T.#<N
M>&ULO5?;<N(X$/T5E9]VJQ)\!Y("J@C,7AYFA@JS.\_";D 5V_)*<@A_OY)L
M#-A&,#SD);[U.72?/E+4HQUE;WP+(-!'FF1\;&V%R)]MFT=;2#'OT1PR^65-
M68J%?&0;F^<,<*Q!:6)[CM.W4TPR:S+2[Q9L,J*%2$@&"X9XD::8[5\@H;NQ
MY5J'%Z]DLQ7JA3T9Y7@#2Q#_Y LFG^R:)28I9)S0##%8CZVI^SQW?070$?\2
MV/&3>Z1*65'ZIA[^CL>6HS*"!"*A*+"\O,,,DD0QR3S^JTBM^C<5\/3^P/Z'
M+EX6L\(<9C3Y26*Q'5M#"\6PQD4B7NGN+Z@*"A5?1!.N_Z)=%>M8*"JXH&D%
MEAFD)"NO^*,2X@3@]B\ O K@-0'!!8!? ?Q; 4$%"+0R92E:ASD6>#)B=(>8
MBI9LZD:+J=&R?)*IOB\%DU^)Q(G)-RH #=$C^IZK/O!GM)36BHL$$%VCY18S
M>%2ZQFA&4VDVCE78 UH*&KT=0 ]HJMI'Q![]-@>!2<)_EY1<H?GA0C+T8TL+
MCK.8CVPA<U<9V%&5YTN9IW<A3]=#7VDFMAQ]R6*(SPEL671=N7>H_,4S,LXA
MZB'??4">X[D="<UNASL=\/G-</?)4(U?]]'7?,$%ODN=0E/&<+8!N50%6NW/
M.KK >_UZNL,L?C@V\T^)$+IA"V"$RD_?Y 8D[2!7VAJ(*&0[NSI89ACJ#-5^
M\SZ1PKR?2MJ.\/KG(7,3R9DR0:U,8%1FP4@$Z%6)H.HI%2AK;/JH+,-,]RB-
M_=AE%S-L,.@YH83J:Y==?OE7S\0(:S'"3[/)EX^<,(T^\4J7H&&KI7[#%^T(
MMV&+=H37;8M^K43_#EOHFKIM8:8;!+U^8.COS P/A[W0,=GC1KC*PF"302W.
MX"YQ@$6$=\MC)O3ZO= SR7,CO%U?*<\5>-!SE#Q:)H,\PUJ>X:>MHN^%X$+^
M3R391NZS1;H"UB7OL.7_T&LLHG9(_ZFQBHPL9U(\U5(\W>&4DZ*ZBC%3^G[/
M-ZV%F1E^S6KS&^%7EI+K'$]8SB?NN7H)XE4")K=4&9UMN4'#+ETQC7UY;HXY
MU^/DQ.G>89D?5.#DM+[.NLS,5YUS!7]UF[D??ZZ5=]3*,S)*OZ32*?JT;2(\
M'A-=\SFQ(N3Z^$XX+Z39BER^@6IS5^<\2/.$[@&J,'IP7WF2[VQ,^]CFM@S7
MCADV_=8.&33L9I_,.BFPC9X9.8IHD8GR\%^_K>?2J9[&&N]?U+RJ9Z@C33GL
M?L5L0^2A)H&UI'1Z YD/*^?'\D'07$]4*RKD?*9OMW+F!J8"Y/<UE5-5]:!^
MH)[B)_\#4$L#!!0    ( +E^>50:/Z-FI (  + '   9    >&PO=V]R:W-H
M965T<R]S:&5E=#@X+GAM;,5546_:,!#^*Z=HDUJ)DA (M%6(!&75^M -P=H]
MF^0@%DZ<V0XI_WZV$S(F05[[0GSVW>?ON\-W8<7%7J:("CXRELNIDRI5/+JN
MC%/,B.SS G-]LN4B(TJ;8N?*0B!);%#&7-_SQFY&:.Y$H=U;BBCDI6(TQZ4
M6689$<<Y,EY-G8%SVEC17:K,AAN%!=GA&M5;L13:<EN4A&:82\IS$+B=.K/!
MXWQB_*W#.\5*GJW!*-EPOC?&2S)U/$,(&<;*(!#].> 3,F: -(T_#:;37FD"
MS]<G]&>K76O9$(E/G/VFB4JGSKT#"6Y)R=2*5]^QT1,8O)@S:7^A:GP]!^)2
M*IXUP9I!1O/Z2SZ:/)P%^,&5 +\)\"WO^B++<D$4B4+!*Q#&6Z.9A95JHS4Y
MFINBK)70IU3'J>@'5PCW< <_"Y,E^0AK7?>D9 A\"^N4"+PSJA-8DJ,NAH)9
M1432@[7B\?X4U8-WPDIB\SR3NL#U-MPL4!'*Y&WH*DW67.G&#;%Y3<R_0FS@
MPRO/52KA6YY@\C^ JU6V4OV3U+G?B;C N _#00]\S_?>U@NX^7+; 3ML,SBT
ML,.KL%9B!]*H11I9I-$5I/-L/_%,OSO9I%0(DN_0IG]S[*K*,Z'"U@+/Z]"#
M;Q^%?@;:?T$/-,&\#927*E/3?+ TS:L^1%[??Q@-0_=P05[0R@L^7=X[9QJ3
M476$%5%X25PW27_2#[RO'<4<MVK'GZ5V1>4>G@4BO.0*!4IU56PW1Z\?C+NT
M3EJMDT^O["\4V26%W<P"."(1$H:0U<UD< \).5Y\K>Y9%\U0[.RLD!#S,E=U
M0VUWVW$TJ[OP/_=ZEKT2L:.Z_S'<ZE"O/]%_.E'/A]I0O+ ]><.5[O!VF>J1
MBL(XZ/,MUWVY,<P%[9"._@)02P,$%     @ N7YY5#9N$D,5!   ;10  !D
M  !X;"]W;W)K<VAE971S+W-H965T.#DN>&ULQ5AA;YLX&/XK%KH/=U(&V(1
MJB12VNYT)VVWJ-$V[:,#3D %S-FF::?]^-G@ E& M>OH\B$!;+]^GM>OGX=X
M<:3LED>$"'"?)AE?&I$0^85E\2 B*>8FS4DF6_:4I5C(6W:P>,X(#LM!:6(A
MVYY9*8XS8[4HGVW8:D$+D<09V3# BS3%[.&2)/2X-*#Q^. F/D1"/;!6BQP?
MR):(C_F&R3NKCA+&*<EX3#/ R'YIK.'%)7+5@++'IY@<>>L:*"H[2F_5S;_A
MTK 5(I*00*@06/[<D2N2)"J2Q/&_#FK4<ZJ![>O'Z'^7Y"69'>;DBB:?XU!$
M2\,W0$CVN$C$#3W^0S2A$F! $UY^@Z/N:QL@*+B@J1XL$:1Q5OWB>YV(U@"G
M;P#2 U")NYJH1'F-!5XM&#T"IGK+:.JBI%J.EN#B3*W*5C#9&LMQ8O4?%03X
MX WXD*LL\0NPE0L?%@D!= ^V$6;DC6(=@BN:RE+@6'6;5"T<K L1419_E>U%
M%A(&MH(&MSH8V"0XXQ.P>P!O[PD+8D[ AL4! 3<X.Q#PYS41.$[X7PM+2"H*
MD!5HV)<5;-0#&R+PGF8BXN"MG#8\#6#)'-2)0(^)N$2#$:])8 ('3@"R$?P#
M6("7#*OO@?A.G6BGC#_MB=].Y08_R,(68,V82H2ZGNB<33I3-0'OZ%%FM\K;
MNSB-15?.*@1>B4!MQ[N5XYC.PKKKP#VM<4_'Q/TQSW^,>WJ&V_-,V^T&[M;
MW3&!ZP+_4 @N<!;&V0%\ UW54%&HL+@M"B[T7;^;PJRF,!ND\+G4%(E_?4>8
MU$AP0Y30*BQ7LOJ9E+0")S*O>[F9OA#,NK=2-0FT6^!FYG3>C<VKL7ECIK>5
MUPDXXWDZIHN3=U8RL[F)G'GKT\W/K_GYKU ^NA'OI)X.E8]_5C[.%/E>-X5Y
M36$^)H46]I]:HOGY$KFFV[.KH=T8ECW(JM(2."#)L&5^\+>+LH9PLOWZ91FB
M!COZ[<*L(;37T/7-OB5LK!".ZH7/E&8-IKVYH&NC:0^+QACAL#/^(G76LYS6
MASGM@]?8'QS5_UXJT!K=2>D@T^F1--A8(ASVQ-?590WFJ;73F"<<U3U?*LWP
MW#Z'%J?Q3#ALFI6<H"%M;LP+CNI>3]/F^?G>\Z;FK&=]46-2:-BD7D.<-80G
MOC:CQA31J*;X3'768$Y>?6:^T[<"C3VB87O\1>JL9SFM$-/K@]=8(!K5 E^J
MSNC\KZ(W,R'JH=5X(AKUW^(SU5F#.5'G.9KUO%JAQCK1J-;Y4G5&Y];IN:8/
M!_[<6*T3H)2P0WG.Q4% BTQ4AT'UT_HL;5V=(#7=JX.X]Y@=XHR#A.SE4-OT
M)!I6G6U5-X+FY7G2C@I!T_(R(C@D3'60[7M*Q>.-FJ ^85Q]!U!+ P04
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
MS0'B_9((7<M&/D!UXS7\'U!+ P04    " "Y?GE42C$7_F\"   ?!@  &0
M 'AL+W=O<FMS:&5E=',O<VAE970Y-"YX;6R-5=MNVS ,_17!Z$,+;/4E3M86
MCH$FWK ]= N:=7M6;"86JDLFR4W[]Z5DUTN;"_)BBQ+/(0]IT=E&Z4=3 UCR
M++@TXZ"V=GT3AJ:L05!SJ=8@\62IM* 63;T*S5H#K3Q(\#")HE$H*)-!GOF]
MF<XSU5C.),PT,8T05+],@*O-.(B#MXU[MJJMVPCS;$U7, ?[L)YIM,*>I6("
MI&%*$@W+<7 ;WQ1#Y^\=_C#8F*TU<4H62CTZXT<U#B*7$' HK6.@^'J"*7#N
MB#"-?QUGT(=TP.WU&_LWKQVU+*B!J>)_667K<7 5D J6M.'V7FV^0Z?')U@J
M;OR3;#K?*"!E8ZP2'1@S$$RV;_K<U6$+$(\. )(.D'P$I < @PXP.!60=H#4
M5Z:5XNM04$OS3*L-T<X;V=S"%].C43Z3KNUSJ_&4(<[F/Y4%$B?D,YEI536E
M)7/*@5!9D5FCRQI+2J9*"&:QU]:0\P(L9=Q<(.)A7I#SLPMR1I@DOVO5&(29
M++28EV,/RRZ'29M#<B '#'^GI*T-^2HKJ-X3A"BH5Y6\J9HD1QD+*"_)(/Y$
MDBB)]R0T/1T>[8$7)\/CZR-J!GV/!IYO<)#/E_P(4]HSI9XI/<!TKUXHMR_8
MKU()(.>R[?[%OIZU3"//Y(;'4QX/L_!INXJ[+JY<VR[%KLNH]W@G8=A+&!Z5
M,,4O1>.T:"@GOQ:<K:B;'_L$#'="IU?7\8?HX=;5$:!7?@094JI&VO9[ZW?[
M*7?K+_>'_0E.OW98_:=I1^<=U2LF#>&P1,KH\@LFIMMQU!I6K?T%72B+U]TO
M:YS@H)T#GB\5MJDS7(#^GY"_ E!+ P04    " "Y?GE4GA-BH58"  ##!0
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
MJ>'<>2?\@YSU?)4,_MX-UZX[9O[;7>X'_\;P9!]=O2@7*VU9($S15"+E#'A
MD57R'0[4AXT^G1)\R#A3"800D\VA1\1_>T7\P\_(WW,8%WL-4Z*T?8(BPIJ=
M/ARJU0R]SU70[DZ]8&JO6R(6E$E(<:Z%O&97GQVQ+6>V \67MH28<:4+$MM-
M= F(PDS0]CG7940Q,%5)652.?@-02P,$%     @ N7YY5+^T /B3 @  Y 4
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
MJU+*.9^]?7EBKMH@H^]*(*\-,ONN#5MQ:RNNFI6ZQCT5MM"*[;8BP'UY2-V
M(,G+O W2^Z[I-OZD]1NB#*67W_V^[CVH*RWF$,:4/C"/H) TFY[ WI%6F6?0
MA13WR^];7:A$N&R#Q("50*LV2 Q8>>5H@\QS4#E@M;.M7$*R;7'8PE! #RDO
M:Y:ZM3[/^5)L:Z7V&1XM,-"^Q".O/*[Y3[X\/!)5WS9*&8K)1KQ*[SMBF<C*
M YGRAM-]L9%\HUQL3(O+'?%#DN4 \7Q#Q6:RNLE?4)^*3?\%4$L#!!0    (
M +E^>532HB]A'P,  !82   -    >&PO<W1Y;&5S+GAM;-U8;6O;,!#^*T8=
MHX51)W'CQFL2V *%P38*[8=]*THL)P)9\F2E2_KKI[/\DJ2ZTO7#ULPAM72/
M[KE'=^?*9%R:K6"W*\9,L,F%+"=D94SQ,0S+Q8KEM#Q7!9,6R93.J;%3O0S+
M0C.:EN"4BW#0Z\5A3KDDT[%<Y]>Y*8.%6DLS(1>M*7"W+^F$].,+$CBZF4K9
MA-R?OO^Y5N;J7>#N)Q].3GKW9U>']M,*.".AEW3X M+S'LYK,8PZWJ=NEE=D
MI]T,<[]\F;+GM=7T89WAZ3A3LDMT1)S!QJ<Y"QZHF) 9%7RN.7AE-.=BZ\P#
M,"R44#HPML)64!\LY:.#^VX&Q:]Y<BZ5KF*[".[OO%Y^ #0S$,B%: 4.B#-,
MQP4UAFEY;2?5XLKX! KJ\=VVL J7FF[[@R'I'*J;#3)7.F6Z#=,GC6DZ%BP#
M.9HO5W WJ@@!-$;E=I!RNE225AH:CWI@:1=,B%MX,GYD>]R;;*>R/:BK;(=6
M4#UT-&X"_+MLCGN7]G6\0<$?E/F\MMN1U1S:A=UHEO%--=]DK0",O8^STZ(0
MVT^"+V7.W.9?'' ZIHU?L%*:/]IHT"H+:V":! ],&[[8M?S2M+AC&].TTR;#
M-0^.4//?S?.22::IV!5M>_\M9_G5BJ/+?R6Y^J]R*-BKL3[NWKK(X3&(C(]!
MY!'T9)2\28UA?33NG+][IV]K#> M9T*^PUN5Z((&\S47ALMZMN)IRN230]C2
M&SJW+[U[_'9]RC*Z%N:N!2>D&W]C*5_G2;OJ!A)1K^K&7V%[_;A]Q;*QN$S9
MAJ6S>JJ7\VH8V(&-6E_@<(A<5Y<?P7P<YD< P^)@"C ?YX7%^9_V,T+WXS!,
MV\B+C%"?$>KCO'S(K/I@<?P^B;W\.TV2*(IC+*.SF5?!#,M;',/7SX9I P\L
M#D3ZLUSCU<8[Y/D^P&KZ7(=@.\4[$=LIGFM _'D#CR3Q5QN+ QY8%;#>@?C^
M.-!3?I\H@JIBVK G&$>2!$.@%_T]&L=(=F+X^.N#/251E"1^!#"_@BC"$'@:
M<013 !HP)(JJ<_#@/ J;<RKL?@F:_@902P,$%     @ N7YY5)>*NQS
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
MU3L"](ZSS28 O:/J'0%Z1]4[ O2.JG<$Z)U4[P30.ZG>":!W4KT30.^D>B>
MWDGU3@"]D^J= 'HGU3L!]$ZSS8( O9/JG0!Z)]4[ ?3.JG<&Z)U5[PS0.ZO>
M&:!W5KTS0.^L>F> WEGUS@"]L^J= 7IGU3L#],ZSS=X O;/JG0%Z%]6[ /0N
MJG<!Z%U4[P+0NZC>!:!W4;T+0.^B>A> WD7U+@"]B^I= 'H7U;L ]"ZSPSH
MO4TS/Z[SG7Z/T^>A&V]%7^M9P'=J/5WN[6Z_?UU^79P=$6JN0-?W&>/37U!+
M P04    " "Y?GE4A9\G2E@"  ##.   $P   %M#;VYT96YT7U1Y<&5S72YX
M;6S-V\MNVS 0A>%7,;0-+%DD15)%G$W;;9M%7T"5Z%BP;A"9U'G[TLH%:)$:
M#5R@_\:"37+.B -\.U]_>YR<7QW[;O#;9!_"]"'+?+UW?>73<7)#7-F-<U^%
M^'6^RZ:J/E1W+A.;C<[J<0AN".MPJI'<7']RN^J^"ZO/Q_BS;\=AF\RN\\GJ
MX]/&4]8VJ::I:^LJQ/7L86A^2UD_)Z3QY++'[]O)7\4-2?9FPFGESP'/Y[X^
MN'EN&[>ZK>;PI>KCKNS893X\=LZGYTN\T>.XV[6U:\;ZOH]'4C_-KFK\WKG0
M=^E3T:OSR2'>L'OZS"_.7\J<"XP[;^=Q\G%BLWM_W,M(3J?74RSDYM">?\77
MQ%CZXO=SIVDWKOG+['B]/\;YL,S#9\OC\CO^=<:O]=_9AX#T(2%]*$@?!:0/
M#>G#0/JPD#Y*2!_YAM((1=2<0FI.,36GH)I35,TIK.845W,*K#E%5D&155!D
M%119!45609%54&05%%D%159!D5509)44625%5DF155)DE119)45629%54F25
M%%DE159%D5519%44615%5D6155%D5119%45619%5460M*+(6%%D+BJP%1=:"
M(FM!D;6@R%I09"THLA84635%5DV155-DU119-45639%54V35%%DU159-D=50
M9#4460U%5D.1U5!D-119#4560Y'54&0U%%DM159+D=529+4462U%5DN1U5)D
MM119+4562Y&UI,A:4F0M*;*6%%E+BJPE1=:2(FM)D;6DR%I29,TW_Y/6[^-X
M^,?QRS/MJW9XR<^6_R[>_ 102P$"% ,4    " "Y?GE4!T%-8H$   "Q
M$               @ $     9&]C4')O<',O87!P+GAM;%!+ 0(4 Q0    (
M +E^>53!MH#Z[P   "L"   1              "  :\   !D;V-0<F]P<R]C
M;W)E+GAM;%!+ 0(4 Q0    ( +E^>5297)PC$ 8  )PG   3
M  "  <T!  !X;"]T:&5M92]T:&5M93$N>&UL4$L! A0#%     @ N7YY5#I^
M9]:5!@  *1L  !@              ("!#@@  'AL+W=O<FMS:&5E=',O<VAE
M970Q+GAM;%!+ 0(4 Q0    ( +E^>515\$<XT@4  (@6   8
M  " @=D.  !X;"]W;W)K<VAE971S+W-H965T,BYX;6Q02P$"% ,4    " "Y
M?GE4#9A9"GL"  "<!@  &               @('A%   >&PO=V]R:W-H965T
M<R]S:&5E=#,N>&UL4$L! A0#%     @ N7YY5%@YFIXE!0  *!,  !@
M         ("!DA<  'AL+W=O<FMS:&5E=',O<VAE970T+GAM;%!+ 0(4 Q0
M   ( +E^>52C*I.D>P(  -L%   8              " @>T<  !X;"]W;W)K
M<VAE971S+W-H965T-2YX;6Q02P$"% ,4    " "Y?GE4$$R-Y'L&  "8)0
M&               @(&>'P  >&PO=V]R:W-H965T<R]S:&5E=#8N>&UL4$L!
M A0#%     @ N7YY5-RL21E"!P  #!\  !@              ("!3R8  'AL
M+W=O<FMS:&5E=',O<VAE970W+GAM;%!+ 0(4 Q0    ( +E^>53WW_LQX1,
M (TT   8              " @<<M  !X;"]W;W)K<VAE971S+W-H965T."YX
M;6Q02P$"% ,4    " "Y?GE4\.:_)PX#  "0!@  &               @('>
M00  >&PO=V]R:W-H965T<R]S:&5E=#DN>&UL4$L! A0#%     @ N7YY5'[/
M:0H= P  W <  !D              ("!(D4  'AL+W=O<FMS:&5E=',O<VAE
M970Q,"YX;6Q02P$"% ,4    " "Y?GE4'.:,5"T$   8"@  &0
M    @(%V2   >&PO=V]R:W-H965T<R]S:&5E=#$Q+GAM;%!+ 0(4 Q0    (
M +E^>52Q)I[V[ $  &D$   9              " @=I,  !X;"]W;W)K<VAE
M971S+W-H965T,3(N>&UL4$L! A0#%     @ N7YY5*NZO,/C!0  A@T  !D
M             ("!_4X  'AL+W=O<FMS:&5E=',O<VAE970Q,RYX;6Q02P$"
M% ,4    " "Y?GE4LZ/^[#$$  !@"0  &0              @($750  >&PO
M=V]R:W-H965T<R]S:&5E=#$T+GAM;%!+ 0(4 Q0    ( +E^>507=)V [@<
M #(4   9              " @7]9  !X;"]W;W)K<VAE971S+W-H965T,34N
M>&UL4$L! A0#%     @ N7YY5!Q;#?EE @  0 4  !D              ("!
MI&$  'AL+W=O<FMS:&5E=',O<VAE970Q-BYX;6Q02P$"% ,4    " "Y?GE4
MTL%,4) "  "7!0  &0              @(% 9   >&PO=V]R:W-H965T<R]S
M:&5E=#$W+GAM;%!+ 0(4 Q0    ( +E^>50F^0I%'@,  /D&   9
M      " @0=G  !X;"]W;W)K<VAE971S+W-H965T,3@N>&UL4$L! A0#%
M  @ N7YY5'T(:)TY P  + <  !D              ("!7&H  'AL+W=O<FMS
M:&5E=',O<VAE970Q.2YX;6Q02P$"% ,4    " "Y?GE4(F&O6K "  #I!0
M&0              @(',;0  >&PO=V]R:W-H965T<R]S:&5E=#(P+GAM;%!+
M 0(4 Q0    ( +E^>52.1#-_E00  .H*   9              " @;-P  !X
M;"]W;W)K<VAE971S+W-H965T,C$N>&UL4$L! A0#%     @ N7YY5$?M8VA3
M P  / <  !D              ("!?W4  'AL+W=O<FMS:&5E=',O<VAE970R
M,BYX;6Q02P$"% ,4    " "Y?GE4L&L01D #  !=!P  &0
M@($)>0  >&PO=V]R:W-H965T<R]S:&5E=#(S+GAM;%!+ 0(4 Q0    ( +E^
M>51OS6.1: (  &P%   9              " @8!\  !X;"]W;W)K<VAE971S
M+W-H965T,C0N>&UL4$L! A0#%     @ N7YY5,[ DHQB @  ?P4  !D
M         ("!'W\  'AL+W=O<FMS:&5E=',O<VAE970R-2YX;6Q02P$"% ,4
M    " "Y?GE4ZEW86"@#  ![!P  &0              @(&X@0  >&PO=V]R
M:W-H965T<R]S:&5E=#(V+GAM;%!+ 0(4 Q0    ( +E^>52DHG'P9 (  %P%
M   9              " @1>%  !X;"]W;W)K<VAE971S+W-H965T,C<N>&UL
M4$L! A0#%     @ N7YY5/AHM/AG @  8@4  !D              ("!LH<
M 'AL+W=O<FMS:&5E=',O<VAE970R."YX;6Q02P$"% ,4    " "Y?GE42 ?;
MB0D$  #T"   &0              @(%0B@  >&PO=V]R:W-H965T<R]S:&5E
M=#(Y+GAM;%!+ 0(4 Q0    ( +E^>52;@-!V( ,  !$'   9
M  " @9".  !X;"]W;W)K<VAE971S+W-H965T,S N>&UL4$L! A0#%     @
MN7YY5!0R6_;* @  Z04  !D              ("!YY$  'AL+W=O<FMS:&5E
M=',O<VAE970S,2YX;6Q02P$"% ,4    " "Y?GE4K 10Z(D"  "5!0  &0
M            @('HE   >&PO=V]R:W-H965T<R]S:&5E=#,R+GAM;%!+ 0(4
M Q0    ( +E^>50-:>2U?@,  (L'   9              " @:B7  !X;"]W
M;W)K<VAE971S+W-H965T,S,N>&UL4$L! A0#%     @ N7YY5$JZS-]Z!
M:PD  !D              ("!79L  'AL+W=O<FMS:&5E=',O<VAE970S-"YX
M;6Q02P$"% ,4    " "Y?GE43@0J86$"  !:!0  &0              @($.
MH   >&PO=V]R:W-H965T<R]S:&5E=#,U+GAM;%!+ 0(4 Q0    ( +E^>53X
ME\IP;00  .T)   9              " @::B  !X;"]W;W)K<VAE971S+W-H
M965T,S8N>&UL4$L! A0#%     @ N7YY5&>#S\KM P  V0@  !D
M     ("!2J<  'AL+W=O<FMS:&5E=',O<VAE970S-RYX;6Q02P$"% ,4
M" "Y?GE48-<@L+8"  #6!0  &0              @(%NJP  >&PO=V]R:W-H
M965T<R]S:&5E=#,X+GAM;%!+ 0(4 Q0    ( +E^>50+]0W6+P,  +\'   9
M              " @5NN  !X;"]W;W)K<VAE971S+W-H965T,SDN>&UL4$L!
M A0#%     @ N7YY5/-,0*.4 @  \ 4  !D              ("!P;$  'AL
M+W=O<FMS:&5E=',O<VAE970T,"YX;6Q02P$"% ,4    " "Y?GE4"E3O7<0#
M  "E"   &0              @(&,M   >&PO=V]R:W-H965T<R]S:&5E=#0Q
M+GAM;%!+ 0(4 Q0    ( +E^>51!?2=*<0(  &L%   9              "
M@8>X  !X;"]W;W)K<VAE971S+W-H965T-#(N>&UL4$L! A0#%     @ N7YY
M5%8J4>J, @  K04  !D              ("!+[L  'AL+W=O<FMS:&5E=',O
M<VAE970T,RYX;6Q02P$"% ,4    " "Y?GE4 D,Z4TT"   @!0  &0
M        @('RO0  >&PO=V]R:W-H965T<R]S:&5E=#0T+GAM;%!+ 0(4 Q0
M   ( +E^>514;I$=,@(  - $   9              " @7;   !X;"]W;W)K
M<VAE971S+W-H965T-#4N>&UL4$L! A0#%     @ N7YY5+[C5]8J @  R 0
M !D              ("!W\(  'AL+W=O<FMS:&5E=',O<VAE970T-BYX;6Q0
M2P$"% ,4    " "Y?GE4Q%5#-74"  !&!0  &0              @(% Q0
M>&PO=V]R:W-H965T<R]S:&5E=#0W+GAM;%!+ 0(4 Q0    ( +E^>50O)+5F
M+P(  ,T$   9              " @>S'  !X;"]W;W)K<VAE971S+W-H965T
M-#@N>&UL4$L! A0#%     @ N7YY5,NG?APQ P  P@<  !D
M ("!4LH  'AL+W=O<FMS:&5E=',O<VAE970T.2YX;6Q02P$"% ,4    " "Y
M?GE4+V G"Z\"  "L!0  &0              @(&ZS0  >&PO=V]R:W-H965T
M<R]S:&5E=#4P+GAM;%!+ 0(4 Q0    ( +E^>53SCT:BBP,  /T'   9
M          " @:#0  !X;"]W;W)K<VAE971S+W-H965T-3$N>&UL4$L! A0#
M%     @ N7YY5("2P^JS @  Q@4  !D              ("!8M0  'AL+W=O
M<FMS:&5E=',O<VAE970U,BYX;6Q02P$"% ,4    " "Y?GE4A;^9%UP"   R
M!0  &0              @(%,UP  >&PO=V]R:W-H965T<R]S:&5E=#4S+GAM
M;%!+ 0(4 Q0    ( +E^>52)RT*2] (  $<&   9              " @=_9
M  !X;"]W;W)K<VAE971S+W-H965T-30N>&UL4$L! A0#%     @ N7YY5+_*
M!FA= @  004  !D              ("!"MT  'AL+W=O<FMS:&5E=',O<VAE
M970U-2YX;6Q02P$"% ,4    " "Y?GE4:Q<V@,,"   J!P  &0
M    @(&>WP  >&PO=V]R:W-H965T<R]S:&5E=#4V+GAM;%!+ 0(4 Q0    (
M +E^>514UTT:D0(  *D%   9              " @9CB  !X;"]W;W)K<VAE
M971S+W-H965T-3<N>&UL4$L! A0#%     @ N7YY5+:@\R?< @  @@8  !D
M             ("!8.4  'AL+W=O<FMS:&5E=',O<VAE970U."YX;6Q02P$"
M% ,4    " "Y?GE4>/^J\TX"    !0  &0              @(%SZ   >&PO
M=V]R:W-H965T<R]S:&5E=#4Y+GAM;%!+ 0(4 Q0    ( +E^>514!A!A?0(
M %T%   9              " @?CJ  !X;"]W;W)K<VAE971S+W-H965T-C N
M>&UL4$L! A0#%     @ N7YY5 UECN>H @  MP4  !D              ("!
MK.T  'AL+W=O<FMS:&5E=',O<VAE970V,2YX;6Q02P$"% ,4    " "Y?GE4
M9T)0";H"  #1!0  &0              @(&+\   >&PO=V]R:W-H965T<R]S
M:&5E=#8R+GAM;%!+ 0(4 Q0    ( +E^>511ID:B:P(  (0%   9
M      " @7SS  !X;"]W;W)K<VAE971S+W-H965T-C,N>&UL4$L! A0#%
M  @ N7YY5*7*"CO= @  8@8  !D              ("!'O8  'AL+W=O<FMS
M:&5E=',O<VAE970V-"YX;6Q02P$"% ,4    " "Y?GE4SU0?0]L"  !.!@
M&0              @($R^0  >&PO=V]R:W-H965T<R]S:&5E=#8U+GAM;%!+
M 0(4 Q0    ( +E^>50(7N^(=P(  ,@'   9              " @43\  !X
M;"]W;W)K<VAE971S+W-H965T-C8N>&UL4$L! A0#%     @ N7YY5.]+EXJ*
M P  -0T  !D              ("!\OX  'AL+W=O<FMS:&5E=',O<VAE970V
M-RYX;6Q02P$"% ,4    " "Y?GE4Q?^4@6<"  #3!0  &0
M@(&S @$ >&PO=V]R:W-H965T<R]S:&5E=#8X+GAM;%!+ 0(4 Q0    ( +E^
M>52<GE/*.@(  )X$   9              " @5$% 0!X;"]W;W)K<VAE971S
M+W-H965T-CDN>&UL4$L! A0#%     @ N7YY5/'[4Y 6 @  @@0  !D
M         ("!P@<! 'AL+W=O<FMS:&5E=',O<VAE970W,"YX;6Q02P$"% ,4
M    " "Y?GE4#KOD[\$"  #@!P  &0              @($/"@$ >&PO=V]R
M:W-H965T<R]S:&5E=#<Q+GAM;%!+ 0(4 Q0    ( +E^>50ZK?XJC@(  .P&
M   9              " @0<- 0!X;"]W;W)K<VAE971S+W-H965T-S(N>&UL
M4$L! A0#%     @ N7YY5 7=#-.( @  G08  !D              ("!S \!
M 'AL+W=O<FMS:&5E=',O<VAE970W,RYX;6Q02P$"% ,4    " "Y?GE40Q#4
M_<0"   M!P  &0              @(&+$@$ >&PO=V]R:W-H965T<R]S:&5E
M=#<T+GAM;%!+ 0(4 Q0    ( +E^>52;9'3#4 ,  %T*   9
M  " @885 0!X;"]W;W)K<VAE971S+W-H965T-S4N>&UL4$L! A0#%     @
MN7YY5-#OMQ.? @  * <  !D              ("!#1D! 'AL+W=O<FMS:&5E
M=',O<VAE970W-BYX;6Q02P$"% ,4    " "Y?GE4=P+V"<$$  #M%   &0
M            @('C&P$ >&PO=V]R:W-H965T<R]S:&5E=#<W+GAM;%!+ 0(4
M Q0    ( +E^>53&'MHC4@,  *P*   9              " @=L@ 0!X;"]W
M;W)K<VAE971S+W-H965T-S@N>&UL4$L! A0#%     @ N7YY5.]Z2<1.!0
MZ!H  !D              ("!9"0! 'AL+W=O<FMS:&5E=',O<VAE970W.2YX
M;6Q02P$"% ,4    " "Y?GE45L+J.MD!   W!   &0              @('I
M*0$ >&PO=V]R:W-H965T<R]S:&5E=#@P+GAM;%!+ 0(4 Q0    ( +E^>52M
M^V,Z_P$  &8$   9              " @?DK 0!X;"]W;W)K<VAE971S+W-H
M965T.#$N>&UL4$L! A0#%     @ N7YY5.2+3CWP @  \0@  !D
M     ("!+RX! 'AL+W=O<FMS:&5E=',O<VAE970X,BYX;6Q02P$"% ,4
M" "Y?GE4SE5:%[,"  !S!P  &0              @(%6,0$ >&PO=V]R:W-H
M965T<R]S:&5E=#@S+GAM;%!+ 0(4 Q0    ( +E^>51M&JN/!P0  -@-   9
M              " @4 T 0!X;"]W;W)K<VAE971S+W-H965T.#0N>&UL4$L!
M A0#%     @ N7YY5*/U-C?* @  S@<  !D              ("!?C@! 'AL
M+W=O<FMS:&5E=',O<VAE970X-2YX;6Q02P$"% ,4    " "Y?GE4*4WJUR\$
M  "*$   &0              @(%_.P$ >&PO=V]R:W-H965T<R]S:&5E=#@V
M+GAM;%!+ 0(4 Q0    ( +E^>50]6E@PX0,  -$/   9              "
M@>4_ 0!X;"]W;W)K<VAE971S+W-H965T.#<N>&UL4$L! A0#%     @ N7YY
M5!H_HV:D @  L <  !D              ("!_4,! 'AL+W=O<FMS:&5E=',O
M<VAE970X."YX;6Q02P$"% ,4    " "Y?GE4-FX20Q4$  !M%   &0
M        @('81@$ >&PO=V]R:W-H965T<R]S:&5E=#@Y+GAM;%!+ 0(4 Q0
M   ( +E^>52Y]Q0FI@(  %D'   9              " @21+ 0!X;"]W;W)K
M<VAE971S+W-H965T.3 N>&UL4$L! A0#%     @ N7YY5)Z>(0/& @  ?P@
M !D              ("! 4X! 'AL+W=O<FMS:&5E=',O<VAE970Y,2YX;6Q0
M2P$"% ,4    " "Y?GE4/3Y=T5T$   6$P  &0              @('^4 $
M>&PO=V]R:W-H965T<R]S:&5E=#DR+GAM;%!+ 0(4 Q0    ( +E^>52>'%FF
M9 0  /T2   9              " @9)5 0!X;"]W;W)K<VAE971S+W-H965T
M.3,N>&UL4$L! A0#%     @ N7YY5$HQ%_YO @  'P8  !D
M ("!+5H! 'AL+W=O<FMS:&5E=',O<VAE970Y-"YX;6Q02P$"% ,4    " "Y
M?GE4GA-BH58"  ##!0  &0              @('37 $ >&PO=V]R:W-H965T
M<R]S:&5E=#DU+GAM;%!+ 0(4 Q0    ( +E^>516F6@2G0(  (T'   9
M          " @6!? 0!X;"]W;W)K<VAE971S+W-H965T.38N>&UL4$L! A0#
M%     @ N7YY5-/FJ(*R @  G <  !D              ("!-&(! 'AL+W=O
M<FMS:&5E=',O<VAE970Y-RYX;6Q02P$"% ,4    " "Y?GE4K.$R@>T"  !@
M"@  &0              @($=90$ >&PO=V]R:W-H965T<R]S:&5E=#DX+GAM
M;%!+ 0(4 Q0    ( +E^>52_M #XDP(  .0%   9              " @4%H
M 0!X;"]W;W)K<VAE971S+W-H965T.3DN>&UL4$L! A0#%     @ N7YY5%3:
M^VMP!   (1,  !H              ("!"VL! 'AL+W=O<FMS:&5E=',O<VAE
M970Q,# N>&UL4$L! A0#%     @ N7YY5-*B+V$? P  %A(   T
M     ( !LV\! 'AL+W-T>6QE<RYX;6Q02P$"% ,4    " "Y?GE4EXJ[',
M   3 @  "P              @ ']<@$ 7W)E;',O+G)E;'-02P$"% ,4
M" "Y?GE4/D!AP7P&  ""0@  #P              @ 'F<P$ >&PO=V]R:V)O
M;VLN>&UL4$L! A0#%     @ N7YY5,,K'SW6 @  QSH  !H
M ( !CWH! 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @
MN7YY5(6?)TI8 @  PS@  !,              ( !G7T! %M#;VYT96YT7U1Y
><&5S72YX;6Q02P4&     &P ; "L'0  )H !

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>117
<FILENAME>Show.js
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
// Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission.  Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105.
var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0);
e.removeAttribute('id');a.parentNode.appendChild(e)}}
if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'}
e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>118
<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>119
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>99</ContextCount>
  <ElementCount>301</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>20</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>4</UnitCount>
  <MyReports>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000010 - Document - Document and Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation</Role>
      <ShortName>Document and Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>000020 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets</Role>
      <ShortName>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>000030 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS - Parenthetical</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical</Role>
      <ShortName>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS - Parenthetical</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>000040 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome</Role>
      <ShortName>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>000050 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME - Parenthetical</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical</Role>
      <ShortName>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME - Parenthetical</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>000060 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity</Role>
      <ShortName>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>000070 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED CONDENSED STATEMENTS OF CASH FLOW</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow</Role>
      <ShortName>UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED CONDENSED STATEMENTS OF CASH FLOW</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>000080 - Disclosure - Note 1 - Summary of Significant Accounting Policies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>000090 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>000100 - Disclosure - Note 3 - Quarterly Results of Operations (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited</Role>
      <ShortName>Note 3 - Quarterly Results of Operations (Unaudited)</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>000110 - Disclosure - Note 4 - Property and Equipment</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipment</Role>
      <ShortName>Note 4 - Property and Equipment</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>000120 - Disclosure - Note 5 - Long-term Debt</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebt</Role>
      <ShortName>Note 5 - Long-term Debt</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>000130 - Disclosure - Note 6 - Commitments and Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingencies</Role>
      <ShortName>Note 6 - Commitments and Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>000140 - Disclosure - Note 7 - Income Taxes</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxes</Role>
      <ShortName>Note 7 - Income Taxes</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>000150 - Disclosure - Note 8 - Options</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote8Options</Role>
      <ShortName>Note 8 - Options</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>000160 - Disclosure - Note 9 - Geographic Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformation</Role>
      <ShortName>Note 9 - Geographic Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>000170 - Disclosure - Note 10 - Geographic Long-Lived Assets Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformation</Role>
      <ShortName>Note 10 - Geographic Long-Lived Assets Information</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>000180 - Disclosure - Note 11 - Revenues By Product Category And Region</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegion</Role>
      <ShortName>Note 11 - Revenues By Product Category And Region</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>000190 - Disclosure - Note 12 - Product Sale and Purchase Commitments</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitments</Role>
      <ShortName>Note 12 - Product Sale and Purchase Commitments</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>000200 - Disclosure - Note 13 - Employee Benefit Plans</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlans</Role>
      <ShortName>Note 13 - Employee Benefit Plans</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>20</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>000210 - Disclosure - Note 14 - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote14Leases</Role>
      <ShortName>Note 14 - Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>21</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>000220 - Disclosure - Note 15 - CSI Distribution Agreement Purchase Disclosure</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure</Role>
      <ShortName>Note 15 - CSI Distribution Agreement Purchase Disclosure</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>22</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>000230 - Disclosure - Note 16 - Earnings Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShare</Role>
      <ShortName>Note 16 - Earnings Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>23</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>000240 - Disclosure - Note 17 - Recent Accounting Pronouncements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncements</Role>
      <ShortName>Note 17 - Recent Accounting Pronouncements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>24</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>000250 - Disclosure - Note 18 - Subsequent Events</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote18SubsequentEvents</Role>
      <ShortName>Note 18 - Subsequent Events</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>25</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>000260 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Use of Estimates in The Preparation of Financial Statements (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Use of Estimates in The Preparation of Financial Statements (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>000270 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Principles of Consolidation (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Principles of Consolidation (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>000280 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>28</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>000290 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Concentration of Credit Risk (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Concentration of Credit Risk (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>29</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>000300 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Accounts Receivable (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Accounts Receivable (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>000310 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Inventories (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Inventories (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>31</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>000320 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>000330 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Long-lived Assets (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Long-lived Assets (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>33</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>000340 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>34</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>000350 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>000360 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Revenue Recognition (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Revenue Recognition (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>36</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>000370 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Income Taxes (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Income Taxes (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>000380 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Legal Costs (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Legal Costs (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>000390 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Earnings Per Share (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Earnings Per Share (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>000400 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Presentation of Sales and Similar Taxes (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Presentation of Sales and Similar Taxes (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>000410 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Translation of Foreign Currencies (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Translation of Foreign Currencies (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>41</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R42.htm</HtmlFileName>
      <LongName>000420 - Disclosure - Note 17 - Recent Accounting Pronouncements: New Accounting Pronouncements, Policy (Policies)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies</Role>
      <ShortName>Note 17 - Recent Accounting Pronouncements: New Accounting Pronouncements, Policy (Policies)</ShortName>
      <MenuCategory>Policies</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies</ParentRole>
      <Position>42</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R43.htm</HtmlFileName>
      <LongName>000430 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>43</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R44.htm</HtmlFileName>
      <LongName>000440 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>44</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R45.htm</HtmlFileName>
      <LongName>000450 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>45</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R46.htm</HtmlFileName>
      <LongName>000460 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>46</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R47.htm</HtmlFileName>
      <LongName>000470 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>47</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R48.htm</HtmlFileName>
      <LongName>000480 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>48</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R49.htm</HtmlFileName>
      <LongName>000490 - Disclosure - Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables</Role>
      <ShortName>Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited</ParentRole>
      <Position>49</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R50.htm</HtmlFileName>
      <LongName>000500 - Disclosure - Note 4 - Property and Equipment: Property, Plant and Equipment (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables</Role>
      <ShortName>Note 4 - Property and Equipment: Property, Plant and Equipment (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>50</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R51.htm</HtmlFileName>
      <LongName>000510 - Disclosure - Note 4 - Property and Equipment: Property Plant and Equipment by Location (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables</Role>
      <ShortName>Note 4 - Property and Equipment: Property Plant and Equipment by Location (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>51</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R52.htm</HtmlFileName>
      <LongName>000520 - Disclosure - Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables</Role>
      <ShortName>Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>52</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R53.htm</HtmlFileName>
      <LongName>000530 - Disclosure - Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables</Role>
      <ShortName>Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>53</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R54.htm</HtmlFileName>
      <LongName>000540 - Disclosure - Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables</Role>
      <ShortName>Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>54</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R55.htm</HtmlFileName>
      <LongName>000550 - Disclosure - Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables</Role>
      <ShortName>Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>55</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R56.htm</HtmlFileName>
      <LongName>000560 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables</Role>
      <ShortName>Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>56</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R57.htm</HtmlFileName>
      <LongName>000570 - Disclosure - Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables</Role>
      <ShortName>Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>57</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R58.htm</HtmlFileName>
      <LongName>000580 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables</Role>
      <ShortName>Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>58</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R59.htm</HtmlFileName>
      <LongName>000590 - Disclosure - Note 9 - Geographic Information: Schedule Of Geographic Information (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables</Role>
      <ShortName>Note 9 - Geographic Information: Schedule Of Geographic Information (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>59</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R60.htm</HtmlFileName>
      <LongName>000600 - Disclosure - Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables</Role>
      <ShortName>Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>60</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R61.htm</HtmlFileName>
      <LongName>000610 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables</Role>
      <ShortName>Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>61</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R62.htm</HtmlFileName>
      <LongName>000620 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables</Role>
      <ShortName>Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>62</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R63.htm</HtmlFileName>
      <LongName>000630 - Disclosure - Note 14 - Leases: Reconciliation of operating lease liabilities (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables</Role>
      <ShortName>Note 14 - Leases: Reconciliation of operating lease liabilities (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>63</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R64.htm</HtmlFileName>
      <LongName>000640 - Disclosure - Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables</Role>
      <ShortName>Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>64</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R65.htm</HtmlFileName>
      <LongName>000650 - Disclosure - Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables</Role>
      <ShortName>Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <Position>65</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R66.htm</HtmlFileName>
      <LongName>000660 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies</ParentRole>
      <Position>66</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R67.htm</HtmlFileName>
      <LongName>000670 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies</ParentRole>
      <Position>67</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R68.htm</HtmlFileName>
      <LongName>000680 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies</ParentRole>
      <Position>68</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R69.htm</HtmlFileName>
      <LongName>000690 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Income Taxes (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Income Taxes (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables</ParentRole>
      <Position>69</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R70.htm</HtmlFileName>
      <LongName>000700 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Legal Costs (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Legal Costs (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables</ParentRole>
      <Position>70</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R71.htm</HtmlFileName>
      <LongName>000710 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails</Role>
      <ShortName>Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables</ParentRole>
      <Position>71</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R72.htm</HtmlFileName>
      <LongName>000720 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables</ParentRole>
      <Position>72</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R73.htm</HtmlFileName>
      <LongName>000730 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables</ParentRole>
      <Position>73</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R74.htm</HtmlFileName>
      <LongName>000740 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables</ParentRole>
      <Position>74</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R75.htm</HtmlFileName>
      <LongName>000750 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables</ParentRole>
      <Position>75</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R76.htm</HtmlFileName>
      <LongName>000760 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails</Role>
      <ShortName>Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables</ParentRole>
      <Position>76</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R77.htm</HtmlFileName>
      <LongName>000770 - Disclosure - Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails</Role>
      <ShortName>Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables</ParentRole>
      <Position>77</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R78.htm</HtmlFileName>
      <LongName>000780 - Disclosure - Note 4 - Property and Equipment: Property, Plant and Equipment (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails</Role>
      <ShortName>Note 4 - Property and Equipment: Property, Plant and Equipment (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables</ParentRole>
      <Position>78</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R79.htm</HtmlFileName>
      <LongName>000790 - Disclosure - Note 4 - Property and Equipment: Property Plant and Equipment by Location (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails</Role>
      <ShortName>Note 4 - Property and Equipment: Property Plant and Equipment by Location (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables</ParentRole>
      <Position>79</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R80.htm</HtmlFileName>
      <LongName>000800 - Disclosure - Note 5 - Long-term Debt (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebtDetails</Role>
      <ShortName>Note 5 - Long-term Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebt</ParentRole>
      <Position>80</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R81.htm</HtmlFileName>
      <LongName>000810 - Disclosure - Note 6 - Commitments and Contingencies (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingenciesDetails</Role>
      <ShortName>Note 6 - Commitments and Contingencies (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingencies</ParentRole>
      <Position>81</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R82.htm</HtmlFileName>
      <LongName>000820 - Disclosure - Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails</Role>
      <ShortName>Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables</ParentRole>
      <Position>82</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R83.htm</HtmlFileName>
      <LongName>000830 - Disclosure - Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails</Role>
      <ShortName>Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables</ParentRole>
      <Position>83</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R84.htm</HtmlFileName>
      <LongName>000840 - Disclosure - Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails</Role>
      <ShortName>Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables</ParentRole>
      <Position>84</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R85.htm</HtmlFileName>
      <LongName>000850 - Disclosure - Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails</Role>
      <ShortName>Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables</ParentRole>
      <Position>85</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R86.htm</HtmlFileName>
      <LongName>000860 - Disclosure - Note 8 - Options (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails</Role>
      <ShortName>Note 8 - Options (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables</ParentRole>
      <Position>86</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R87.htm</HtmlFileName>
      <LongName>000870 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails</Role>
      <ShortName>Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables</ParentRole>
      <Position>87</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R88.htm</HtmlFileName>
      <LongName>000880 - Disclosure - Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails</Role>
      <ShortName>Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables</ParentRole>
      <Position>88</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R89.htm</HtmlFileName>
      <LongName>000890 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails</Role>
      <ShortName>Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables</ParentRole>
      <Position>89</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R90.htm</HtmlFileName>
      <LongName>000900 - Disclosure - Note 9 - Geographic Information: Schedule Of Geographic Information (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails</Role>
      <ShortName>Note 9 - Geographic Information: Schedule Of Geographic Information (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables</ParentRole>
      <Position>90</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R91.htm</HtmlFileName>
      <LongName>000910 - Disclosure - Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails</Role>
      <ShortName>Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables</ParentRole>
      <Position>91</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R92.htm</HtmlFileName>
      <LongName>000920 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails</Role>
      <ShortName>Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables</ParentRole>
      <Position>92</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R93.htm</HtmlFileName>
      <LongName>000930 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails</Role>
      <ShortName>Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables</ParentRole>
      <Position>93</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R94.htm</HtmlFileName>
      <LongName>000940 - Disclosure - Note 12 - Product Sale and Purchase Commitments (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails</Role>
      <ShortName>Note 12 - Product Sale and Purchase Commitments (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitments</ParentRole>
      <Position>94</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R95.htm</HtmlFileName>
      <LongName>000950 - Disclosure - Note 13 - Employee Benefit Plans (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlansDetails</Role>
      <ShortName>Note 13 - Employee Benefit Plans (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlans</ParentRole>
      <Position>95</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R96.htm</HtmlFileName>
      <LongName>000960 - Disclosure - Note 14 - Leases (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails</Role>
      <ShortName>Note 14 - Leases (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables</ParentRole>
      <Position>96</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R97.htm</HtmlFileName>
      <LongName>000970 - Disclosure - Note 14 - Leases: Reconciliation of operating lease liabilities (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails</Role>
      <ShortName>Note 14 - Leases: Reconciliation of operating lease liabilities (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables</ParentRole>
      <Position>97</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R98.htm</HtmlFileName>
      <LongName>000980 - Disclosure - Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails</Role>
      <ShortName>Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables</ParentRole>
      <Position>98</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R99.htm</HtmlFileName>
      <LongName>000990 - Disclosure - Note 15 - CSI Distribution Agreement Purchase Disclosure (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails</Role>
      <ShortName>Note 15 - CSI Distribution Agreement Purchase Disclosure (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure</ParentRole>
      <Position>99</Position>
    </Report>
    <Report instance="utmd-20211231.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R100.htm</HtmlFileName>
      <LongName>001000 - Disclosure - Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails</Role>
      <ShortName>Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables</ParentRole>
      <Position>100</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="10-K" original="utmd-20211231.htm">utmd-20211231.htm</File>
    <File>utmd-20211231.xsd</File>
    <File>utmd-20211231_cal.xml</File>
    <File>utmd-20211231_def.xml</File>
    <File>utmd-20211231_lab.xml</File>
    <File>utmd-20211231_pre.xml</File>
    <File>utmd_ex10z5.htm</File>
    <File>utmd_ex21.htm</File>
    <File>utmd_ex23z1.htm</File>
    <File>utmd_ex23z2.htm</File>
    <File>utmd_ex31z1.htm</File>
    <File>utmd_ex31z2.htm</File>
    <File>utmd_ex32z1.htm</File>
    <File>utmd_ex32z2.htm</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="766">http://fasb.org/us-gaap/2021-01-31</BaseTaxonomy>
    <BaseTaxonomy items="37">http://xbrl.sec.gov/dei/2021q4</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>JSON
<SEQUENCE>122
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "utmd-20211231.htm": {
   "axisCustom": 1,
   "axisStandard": 6,
   "contextCount": 99,
   "dts": {
    "calculationLink": {
     "local": [
      "utmd-20211231_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "utmd-20211231_def.xml"
     ]
    },
    "inline": {
     "local": [
      "utmd-20211231.htm"
     ]
    },
    "labelLink": {
     "local": [
      "utmd-20211231_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "utmd-20211231_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "utmd-20211231.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd",
      "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd",
      "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd",
      "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/srt/2021/elts/srt-types-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-gaap-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-roles-2021-01-31.xsd",
      "https://xbrl.fasb.org/us-gaap/2021/elts/us-types-2021-01-31.xsd",
      "https://xbrl.sec.gov/country/2021/country-2021.xsd",
      "https://xbrl.sec.gov/dei/2021q4/dei-2021q4.xsd"
     ]
    }
   },
   "elementCount": 354,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2021-01-31": 3,
    "http://xbrl.sec.gov/dei/2021q4": 4,
    "total": 7
   },
   "keyCustom": 42,
   "keyStandard": 259,
   "memberCustom": 11,
   "memberStandard": 9,
   "nsprefix": "fil",
   "nsuri": "http://www.utahmed.com/20211231",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "b",
       "span",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:EntityRegistrantName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000010 - Document - Document and Entity Information",
     "role": "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation",
     "shortName": "Document and Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "b",
       "span",
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:EntityRegistrantName",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000100 - Disclosure - Note 3 - Quarterly Results of Operations (Unaudited)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited",
     "shortName": "Note 3 - Quarterly Results of Operations (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:QuarterlyFinancialInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R100": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "001000 - Disclosure - Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails",
     "shortName": "Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000110 - Disclosure - Note 4 - Property and Equipment",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipment",
     "shortName": "Note 4 - Property and Equipment",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000120 - Disclosure - Note 5 - Long-term Debt",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebt",
     "shortName": "Note 5 - Long-term Debt",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000130 - Disclosure - Note 6 - Commitments and Contingencies",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingencies",
     "shortName": "Note 6 - Commitments and Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000140 - Disclosure - Note 7 - Income Taxes",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxes",
     "shortName": "Note 7 - Income Taxes",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000150 - Disclosure - Note 8 - Options",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote8Options",
     "shortName": "Note 8 - Options",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:GeographicInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000160 - Disclosure - Note 9 - Geographic Information",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformation",
     "shortName": "Note 9 - Geographic Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:GeographicInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:GeographicLongLivedAssetsInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000170 - Disclosure - Note 10 - Geographic Long-Lived Assets Information",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformation",
     "shortName": "Note 10 - Geographic Long-Lived Assets Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:GeographicLongLivedAssetsInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:RevenuesbyproductcategoryandregionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000180 - Disclosure - Note 11 - Revenues By Product Category And Region",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegion",
     "shortName": "Note 11 - Revenues By Product Category And Region",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:RevenuesbyproductcategoryandregionTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ProductSaleAndPurchaseCommitmentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000190 - Disclosure - Note 12 - Product Sale and Purchase Commitments",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitments",
     "shortName": "Note 12 - Product Sale and Purchase Commitments",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ProductSaleAndPurchaseCommitmentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000020 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS",
     "role": "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets",
     "shortName": "UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:AccountsReceivableNetCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000200 - Disclosure - Note 13 - Employee Benefit Plans",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlans",
     "shortName": "Note 13 - Employee Benefit Plans",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000210 - Disclosure - Note 14 - Leases",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote14Leases",
     "shortName": "Note 14 - Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeasesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000220 - Disclosure - Note 15 - CSI Distribution Agreement Purchase Disclosure",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure",
     "shortName": "Note 15 - CSI Distribution Agreement Purchase Disclosure",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IntangibleAssetsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000230 - Disclosure - Note 16 - Earnings Per Share",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShare",
     "shortName": "Note 16 - Earnings Per Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000240 - Disclosure - Note 17 - Recent Accounting Pronouncements",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncements",
     "shortName": "Note 17 - Recent Accounting Pronouncements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000250 - Disclosure - Note 18 - Subsequent Events",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote18SubsequentEvents",
     "shortName": "Note 18 - Subsequent Events",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SubsequentEventsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:UseOfEstimates",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000260 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Use of Estimates in The Preparation of Financial Statements (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Use of Estimates in The Preparation of Financial Statements (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:UseOfEstimates",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000270 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Principles of Consolidation (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Principles of Consolidation (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConsolidationPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000280 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Cash and Cash Equivalents (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CashAndCashEquivalentsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000290 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Concentration of Credit Risk (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Concentration of Credit Risk (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SignificantAccountingPoliciesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000030 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS - Parenthetical",
     "role": "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical",
     "shortName": "UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED BALANCE SHEETS - Parenthetical",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:CommonStockParOrStatedValuePerShare",
      "reportCount": 1,
      "unique": true,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReceivablesPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000300 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Accounts Receivable (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Accounts Receivable (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ReceivablesPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000310 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Inventories (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Inventories (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000320 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000330 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Long-lived Assets (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Long-lived Assets (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000340 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000350 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRecognitionPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000360 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Revenue Recognition (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Revenue Recognition (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueRecognitionPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000370 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Income Taxes (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Income Taxes (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:IncomeTaxPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LegalCostsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000380 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Legal Costs (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Legal Costs (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LegalCostsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerSharePolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000390 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Earnings Per Share (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Earnings Per Share (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerSharePolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000040 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME",
     "role": "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome",
     "shortName": "UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:PresentationOfSalesAndSimilarTaxesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000400 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Presentation of Sales and Similar Taxes (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Presentation of Sales and Similar Taxes (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:PresentationOfSalesAndSimilarTaxesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000410 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Translation of Foreign Currencies (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Translation of Foreign Currencies (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R42": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000420 - Disclosure - Note 17 - Recent Accounting Pronouncements: New Accounting Pronouncements, Policy (Policies)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies",
     "shortName": "Note 17 - Recent Accounting Pronouncements: New Accounting Pronouncements, Policy (Policies)",
     "subGroupType": "policies",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R43": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerSharePolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000430 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerSharePolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R44": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000440 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R45": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000450 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R46": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000460 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfGoodwillTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R47": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000470 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R48": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000480 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R49": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000490 - Disclosure - Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables",
     "shortName": "Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000050 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME - Parenthetical",
     "role": "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical",
     "shortName": "UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF INCOME - Parenthetical",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R50": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000500 - Disclosure - Note 4 - Property and Equipment: Property, Plant and Equipment (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables",
     "shortName": "Note 4 - Property and Equipment: Property, Plant and Equipment (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R51": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:PropertyPlantAndEquipmentByLocationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000510 - Disclosure - Note 4 - Property and Equipment: Property Plant and Equipment by Location (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables",
     "shortName": "Note 4 - Property and Equipment: Property Plant and Equipment by Location (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:PropertyPlantAndEquipmentByLocationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R52": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000520 - Disclosure - Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables",
     "shortName": "Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R53": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000530 - Disclosure - Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables",
     "shortName": "Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R54": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000540 - Disclosure - Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables",
     "shortName": "Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R55": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000550 - Disclosure - Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables",
     "shortName": "Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R56": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000560 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables",
     "shortName": "Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R57": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000570 - Disclosure - Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables",
     "shortName": "Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R58": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000580 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables",
     "shortName": "Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R59": {
     "firstAnchor": {
      "ancestors": [
       "fil:GeographicInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ScheduleOfGeographicInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000590 - Disclosure - Note 9 - Geographic Information: Schedule Of Geographic Information (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables",
     "shortName": "Note 9 - Geographic Information: Schedule Of Geographic Information (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "fil:GeographicInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ScheduleOfGeographicInformationTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E18_StEqComps-CommonStock",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000060 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "role": "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity",
     "shortName": "UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED STATEMENTS OF STOCKHOLDERS' EQUITY",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E18_StEqComps-CommonStock",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R60": {
     "firstAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ScheduleOfLongLivedAssetsByGeographicAreaTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000600 - Disclosure - Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables",
     "shortName": "Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ScheduleOfLongLivedAssetsByGeographicAreaTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R61": {
     "firstAnchor": {
      "ancestors": [
       "fil:RevenuesbyproductcategoryandregionTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ScheduleofglobalrevenuesbyproductcategoryTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000610 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables",
     "shortName": "Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "fil:RevenuesbyproductcategoryandregionTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ScheduleofglobalrevenuesbyproductcategoryTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R62": {
     "firstAnchor": {
      "ancestors": [
       "fil:RevenuesbyproductcategoryandregionTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ScheduleofousrevenuesbyproductcategoryTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000620 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables",
     "shortName": "Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "fil:RevenuesbyproductcategoryandregionTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ScheduleofousrevenuesbyproductcategoryTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R63": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000630 - Disclosure - Note 14 - Leases: Reconciliation of operating lease liabilities (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables",
     "shortName": "Note 14 - Leases: Reconciliation of operating lease liabilities (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R64": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000640 - Disclosure - Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables",
     "shortName": "Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R65": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000650 - Disclosure - Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Tables)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables",
     "shortName": "Note 16 - Earnings Per Share: Schedule of Earnings Per Share, Basic and Diluted (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R66": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21_Range-Minimum_PpeByType-BuildingAndBuildingImprovements",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000660 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Property and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21_Range-Minimum_PpeByType-BuildingAndBuildingImprovements",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:PropertyPlantAndEquipmentUsefulLife",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R67": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "fil:ForeignCurrencyExchangeRateTranslationGBPtoUSD",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000670 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Intangible Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "fil:ForeignCurrencyExchangeRateTranslationGBPtoUSD",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R68": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ShareBasedCompensationOptionAndIncentivePlansPolicy",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllocatedShareBasedCompensationExpense",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000680 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Stock-based Compensation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R69": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:IncomeTaxPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y20",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000690 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Income Taxes (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Income Taxes (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:IncomeTaxPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y20",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProfitLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "000070 - Statement - UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED CONDENSED STATEMENTS OF CASH FLOW",
     "role": "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow",
     "shortName": "UTAH MEDICAL PRODUCTS, INC. CONSOLIDATED CONDENSED STATEMENTS OF CASH FLOW",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:Depreciation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R70": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LegalCostsPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LitigationReserve",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000700 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Legal Costs (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Legal Costs (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LegalCostsPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LitigationReserve",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R71": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
       "us-gaap:EarningsPerSharePolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic",
      "reportCount": 1,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000710 - Disclosure - Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails",
     "shortName": "Note 1 - Summary of Significant Accounting Policies: Earnings Per Share: Schedule of Weighted Average Number of Shares (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R72": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000720 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accounts and Other Receivables (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccountsReceivableGrossCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R73": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryFinishedGoodsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000730 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Inventory, Current (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryFinishedGoodsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R74": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E20",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000740 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Goodwill (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfGoodwillTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E19",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:Goodwill",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R75": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedPatentsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000750 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Finite-Lived Intangible Assets (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FiniteLivedPatentsGross",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R76": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccruedIncomeTaxesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000760 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts: Schedule of Accrued Expenses (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock",
       "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:AccruedIncomeTaxesCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R77": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000770 - Disclosure - Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails",
     "shortName": "Note 3 - Quarterly Results of Operations (Unaudited): Quarterly Financial Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21Q4",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:GrossProfit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R78": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Land",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000780 - Disclosure - Note 4 - Property and Equipment: Property, Plant and Equipment (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails",
     "shortName": "Note 4 - Property and Equipment: Property, Plant and Equipment (Details)",
     "subGroupType": "details",
     "uniqueAnchor": null
    },
    "R79": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:Land",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000790 - Disclosure - Note 4 - Property and Equipment: Property Plant and Equipment by Location (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
     "shortName": "Note 4 - Property and Equipment: Property Plant and Equipment by Location (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "fil:PropertyPlantAndEquipmentByLocationTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21_StGeo-U.S.AndCanada",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:Land",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000080 - Disclosure - Note 1 - Summary of Significant Accounting Policies",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies",
     "shortName": "Note 1 - Summary of Significant Accounting Policies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SignificantAccountingPoliciesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R80": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LongTermDebtTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000800 - Disclosure - Note 5 - Long-term Debt (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebtDetails",
     "shortName": "Note 5 - Long-term Debt (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LongTermDebtTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R81": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000810 - Disclosure - Note 6 - Commitments and Contingencies (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingenciesDetails",
     "shortName": "Note 6 - Commitments and Contingencies (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R82": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000820 - Disclosure - Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails",
     "shortName": "Note 7 - Income Taxes: Schedule of Deferred Tax Assets and Liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DeferredTaxAssetsInventory",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R83": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentIncomeTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000830 - Disclosure - Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails",
     "shortName": "Note 7 - Income Taxes: Schedule of Components of Income Tax Expense (Benefit) (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:CurrentIncomeTaxExpenseBenefit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R84": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000840 - Disclosure - Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails",
     "shortName": "Note 7 - Income Taxes: Schedule of Effective Income Tax Rate Reconciliation (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R85": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000850 - Disclosure - Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails",
     "shortName": "Note 7 - Income Taxes: Schedule of Income before Income Tax, Domestic and Foreign (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
       "us-gaap:IncomeTaxDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R86": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000860 - Disclosure - Note 8 - Options (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails",
     "shortName": "Note 8 - Options (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R87": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000870 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails",
     "shortName": "Note 8 - Options: Schedule of Share-based Compensation, Stock Options, Activity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Shares",
      "xsiNil": "false"
     }
    },
    "R88": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000880 - Disclosure - Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails",
     "shortName": "Note 8 - Options: Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y20",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R89": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000890 - Disclosure - Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails",
     "shortName": "Note 8 - Options: Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "UsdPerShare",
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000090 - Disclosure - Note 2 - Detail of Certain Balance Sheet Accounts",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts",
     "shortName": "Note 2 - Detail of Certain Balance Sheet Accounts",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:SupplementalBalanceSheetDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R90": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "fil:ScheduleOfGeographicInformationTextBlock",
       "fil:GeographicInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "fil:CompanySalesInTheUnitedStates",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000900 - Disclosure - Note 9 - Geographic Information: Schedule Of Geographic Information (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails",
     "shortName": "Note 9 - Geographic Information: Schedule Of Geographic Information (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "fil:ScheduleOfGeographicInformationTextBlock",
       "fil:GeographicInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "fil:CompanySalesInTheUnitedStates",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R91": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "fil:ScheduleOfLongLivedAssetsByGeographicAreaTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "fil:LongLivedAssetsInTheUnitedStates",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000910 - Disclosure - Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails",
     "shortName": "Note 10 - Geographic Long-Lived Assets Information: Schedule Of Long-Lived Assets By Geographic Area (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "fil:ScheduleOfLongLivedAssetsByGeographicAreaTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "fil:LongLivedAssetsInTheUnitedStates",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R92": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000920 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
     "shortName": "Note 11 - Revenues By Product Category And Region: Schedule Of Global Revenues By Product Category (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "fil:ScheduleofglobalrevenuesbyproductcategoryTextBlock",
       "fil:RevenuesbyproductcategoryandregionTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21_StGeo-Global",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R93": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:ScheduleOfQuarterlyFinancialInformationTableTextBlock",
       "us-gaap:QuarterlyFinancialInformationTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21Q4",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000930 - Disclosure - Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails",
     "shortName": "Note 11 - Revenues By Product Category And Region: Schedule Of OUS Revenues By Product Category (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "fil:ScheduleofousrevenuesbyproductcategoryTextBlock",
       "fil:RevenuesbyproductcategoryandregionTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21_StGeo-Ous",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R94": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:RoyaltyIncomeNonoperating",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000940 - Disclosure - Note 12 - Product Sale and Purchase Commitments (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails",
     "shortName": "Note 12 - Product Sale and Purchase Commitments (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "fil:ProductSaleAndPurchaseCommitmentsTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:ContractualObligation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R95": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000950 - Disclosure - Note 13 - Employee Benefit Plans (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlansDetails",
     "shortName": "Note 13 - Employee Benefit Plans (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:DefinedContributionPlanEmployerDiscretionaryContributionAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R96": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "D211231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:LesseeOperatingLeaseForParkingLotTermOfContract",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000960 - Disclosure - Note 14 - Leases (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails",
     "shortName": "Note 14 - Leases (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "D211231",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "fil:LesseeOperatingLeaseForParkingLotTermOfContract",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R97": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:PropertyPlantAndEquipmentTextBlock",
       "us-gaap:PropertyPlantAndEquipmentDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseRightOfUseAsset",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000970 - Disclosure - Note 14 - Leases: Reconciliation of operating lease liabilities (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails",
     "shortName": "Note 14 - Leases: Reconciliation of operating lease liabilities (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "fil:ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "lang": null,
      "name": "us-gaap:OperatingLeaseLiabilityCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R98": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000980 - Disclosure - Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails",
     "shortName": "Note 14 - Leases: Lessee, Operating Lease, Liability, Maturity (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "table",
       "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
       "us-gaap:LesseeOperatingLeasesTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "E21",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R99": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:GoodwillAndIntangibleAssetsPolicyTextBlock",
       "ix:continuation",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y19Q1_DistributionRightsAcquisition-CoopersurgicalInc",
      "decimals": "-3",
      "first": true,
      "lang": null,
      "name": "us-gaap:FinitelivedIntangibleAssetsAcquired1",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "000990 - Disclosure - Note 15 - CSI Distribution Agreement Purchase Disclosure (Details)",
     "role": "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails",
     "shortName": "Note 15 - CSI Distribution Agreement Purchase Disclosure (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:IntangibleAssetsDisclosureTextBlock",
       "div",
       "body",
       "html"
      ],
      "baseRef": "utmd-20211231.htm",
      "contextRef": "Y21_DistributionRightsAcquisition-CoopersurgicalInc",
      "decimals": "INF",
      "lang": null,
      "name": "fil:RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 20,
   "tag": {
    "country_IE": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "IRELAND"
       }
      }
     },
     "localname": "IE",
     "nsuri": "http://xbrl.sec.gov/country/2021",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentDescription": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Description of changes contained within amended document.",
        "label": "Amendment Description"
       }
      }
     },
     "localname": "AmendmentDescription",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_AuditorFirmId": {
     "auth_ref": [
      "r453",
      "r454",
      "r455"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "PCAOB issued Audit Firm Identifier",
        "label": "Auditor Firm ID"
       }
      }
     },
     "localname": "AuditorFirmId",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "nonemptySequenceNumberItemType"
    },
    "dei_AuditorLocation": {
     "auth_ref": [
      "r453",
      "r454",
      "r455"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Location"
       }
      }
     },
     "localname": "AuditorLocation",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_AuditorName": {
     "auth_ref": [
      "r453",
      "r454",
      "r455"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Auditor Name"
       }
      }
     },
     "localname": "AuditorName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "internationalNameItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentAnnualReport": {
     "auth_ref": [
      "r453",
      "r454",
      "r455"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an annual report.",
        "label": "Document Annual Report"
       }
      }
     },
     "localname": "DocumentAnnualReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY 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.",
        "label": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.",
        "label": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r456"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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'.",
        "label": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_DocumentsIncorporatedByReferenceTextBlock": {
     "auth_ref": [
      "r451"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Documents incorporated by reference.",
        "label": "Documents Incorporated by Reference"
       }
      }
     },
     "localname": "DocumentsIncorporatedByReferenceTextBlock",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r450"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Entity Common Stock, Shares Outstanding"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r450"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityExTransitionPeriod": {
     "auth_ref": [
      "r459"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if an emerging growth company has elected not to use the extended transition period for complying with any new or revised financial accounting standards.",
        "label": "Ex Transition Period"
       }
      }
     },
     "localname": "EntityExTransitionPeriod",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r450"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-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.",
        "label": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r457"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityPublicFloat": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate market value of the voting and non-voting common equity held by non-affiliates computed by reference to the price at which the common equity was last sold, or the average bid and asked price of such common equity, as of the last business day of the registrant's most recently completed second fiscal quarter.",
        "label": "Entity Public Float"
       }
      }
     },
     "localname": "EntityPublicFloat",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "monetaryItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r450"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r450"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r450"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r450"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_EntityVoluntaryFilers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' if the registrant is not required to file reports pursuant to Section 13 or Section 15(d) of the Act.",
        "label": "Entity Voluntary Filers"
       }
      }
     },
     "localname": "EntityVoluntaryFilers",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityWellKnownSeasonedIssuer": {
     "auth_ref": [
      "r458"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Entity Well-Known Seasoned Issuer"
       }
      }
     },
     "localname": "EntityWellKnownSeasonedIssuer",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_IcfrAuditorAttestationFlag": {
     "auth_ref": [
      "r453",
      "r454",
      "r455"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "ICFR Auditor Attestation Flag"
       }
      }
     },
     "localname": "IcfrAuditorAttestationFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r449"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r452"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2021q4",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DocumentDocumentAndEntityInformation"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "fil_AdjustmentToDeferredTaxLiability": {
     "auth_ref": [],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": {
       "order": 7.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Adjustment To Deferred Tax Liability, during the indicated time period.",
        "label": "Adjustment To Deferred Tax Liability",
        "negatedLabel": "Adjustment To Deferred Tax Liability"
       }
      }
     },
     "localname": "AdjustmentToDeferredTaxLiability",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_BloodPressureMonitoringandAccessoriesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Blood Pressure Monitoring and Accessories, during the indicated time period.",
        "label": "Blood Pressure Monitoring and Accessories"
       }
      }
     },
     "localname": "BloodPressureMonitoringandAccessoriesMember",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptions": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Common stock received and retired upon exercise of stock options, during the indicated time period.",
        "label": "Common stock received and retired upon exercise of stock options"
       }
      }
     },
     "localname": "CommonStockReceivedAndRetiredUponExerciseOfStockOptions",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Common stock received and retired upon exercise of stock options, shares (number of shares), during the indicated time period.",
        "label": "Common stock received and retired upon exercise of stock options, shares"
       }
      }
     },
     "localname": "CommonStockReceivedAndRetiredUponExerciseOfStockOptionsShares",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "fil_CompanySalesInEurope": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Company Sales in Europe, during the indicated time period.",
        "label": "Company Sales in Europe"
       }
      }
     },
     "localname": "CompanySalesInEurope",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_CompanySalesInTheUnitedStates": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Company Sales in the United States, during the indicated time period.",
        "label": "Company Sales in the United States"
       }
      }
     },
     "localname": "CompanySalesInTheUnitedStates",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_CompanySalesOther": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Company Sales Other, during the indicated time period.",
        "label": "Company Sales Other"
       }
      }
     },
     "localname": "CompanySalesOther",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_CoopersurgicalIncMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the CooperSurgical Inc, during the indicated time period.",
        "label": "CooperSurgical Inc"
       }
      }
     },
     "localname": "CoopersurgicalIncMember",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_DeferredIncomeTaxExpense": {
     "auth_ref": [],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Deferred Income Tax Expense, during the indicated time period.",
        "label": "Deferred Income Tax Expense"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpense",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_DeferredTaxLiabilitiesDepreciationAndAmortization": {
     "auth_ref": [],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Deferred Tax Liabilities Depreciation and Amortization, as of the indicated date.",
        "label": "Deferred Tax Liabilities Depreciation and Amortization",
        "negatedLabel": "Deferred Tax Liabilities Depreciation and Amortization"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesDepreciationAndAmortization",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_DistributionRightsAcquisitionAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the description of Distribution Rights Acquisition, during the indicated time period.",
        "label": "Distribution Rights Acquisition [Axis]"
       }
      }
     },
     "localname": "DistributionRightsAcquisitionAxis",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "fil_DistributionRightsAcquisitionDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Distribution Rights Acquisition, during the indicated time period.",
        "label": "Distribution Rights Acquisition"
       }
      }
     },
     "localname": "DistributionRightsAcquisitionDomain",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months, as of the indicated date.",
        "label": "Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonths",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months Period For Recognition, during the indicated time period.",
        "label": "Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next Twelve Months Period For Recognition"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwelveMonthsPeriodForRecognition",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years, as of the indicated date.",
        "label": "Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYears",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years Period For Recognition, during the indicated time period.",
        "label": "Employee Service Share Based Compensation Nonvested Awards Compensation Cost Not Yet Recognized To Be Recognized Over The Next 2 Years Period For Recognition"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsCompensationCostNotYetRecognizedToBeRecognizedOverTheNextTwoYearsPeriodForRecognition",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "fil_EnglandAndAustraliaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the England and Australia, during the indicated time period.",
        "label": "England and Australia"
       }
      }
     },
     "localname": "EnglandAndAustraliaMember",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_FiniteLivedRegulatoryApprovalsAndProductCertificationsGross": {
     "auth_ref": [],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Regulatory approvals &amp; product certifications, as of the indicated date.",
        "label": "Regulatory approvals &amp; product certifications"
       }
      }
     },
     "localname": "FiniteLivedRegulatoryApprovalsAndProductCertificationsGross",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_ForeignCurrencyExchangeRateTranslationAUDtoUSD": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the pure numeric value of Foreign Currency Exchange Rate Translation AUD to USD, as of the indicated date.",
        "label": "Foreign Currency Exchange Rate Translation AUD to USD"
       }
      }
     },
     "localname": "ForeignCurrencyExchangeRateTranslationAUDtoUSD",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "pureItemType"
    },
    "fil_ForeignCurrencyExchangeRateTranslationGBPtoUSD": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the pure numeric value of Foreign Currency Exchange Rate Translation GBP to USD, as of the indicated date.",
        "label": "Foreign Currency Exchange Rate Translation GBP to USD"
       }
      }
     },
     "localname": "ForeignCurrencyExchangeRateTranslationGBPtoUSD",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "pureItemType"
    },
    "fil_GeographicInformationTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Note 9 - Geographic Information, during the indicated time period.",
        "label": "Note 9 - Geographic Information"
       }
      }
     },
     "localname": "GeographicInformationTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_GeographicLongLivedAssetsInformationTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Note 10 - Geographic Long-Lived Assets Information, during the indicated time period.",
        "label": "Note 10 - Geographic Long-Lived Assets Information"
       }
      }
     },
     "localname": "GeographicLongLivedAssetsInformationTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_GlobalMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Global, during the indicated time period.",
        "label": "Global"
       }
      }
     },
     "localname": "GlobalMember",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_GynecologyElectrosurgeryUrologyMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Gynecology/Electrosurgery/Urology, during the indicated time period.",
        "label": "Gynecology/Electrosurgery/Urology"
       }
      }
     },
     "localname": "GynecologyElectrosurgeryUrologyMember",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_LesseeOperatingLeaseForAutomobileTermOfContract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Lessee Operating Lease for Automobile Term of Contract, during the indicated time period.",
        "label": "Lessee Operating Lease for Automobile Term of Contract"
       }
      }
     },
     "localname": "LesseeOperatingLeaseForAutomobileTermOfContract",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "fil_LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Lessee Operating Lease For Parking Lot Adjustment To Lease Payments Required Every Five Years Based On Change In CPI, during the indicated time period.",
        "label": "Lessee Operating Lease For Parking Lot Adjustment To Lease Payments Required Every Five Years Based On Change In CPI"
       }
      }
     },
     "localname": "LesseeOperatingLeaseForParkingLotAdjustmentToLeasePaymentsRequiredEveryFiveYearsBasedOnChangeInCPI",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_LesseeOperatingLeaseForParkingLotTermOfContract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Lessee Operating Lease for Parking Lot Term of Contract, during the indicated time period.",
        "label": "Lessee Operating Lease for Parking Lot Term of Contract"
       }
      }
     },
     "localname": "LesseeOperatingLeaseForParkingLotTermOfContract",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "fil_LongLivedAssetsInAustralia": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Long-lived assets in Australia, as of the indicated date.",
        "label": "Long-lived assets in Australia"
       }
      }
     },
     "localname": "LongLivedAssetsInAustralia",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_LongLivedAssetsInCanada": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Long-lived assets in Canada, as of the indicated date.",
        "label": "Long-lived assets in Canada"
       }
      }
     },
     "localname": "LongLivedAssetsInCanada",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_LongLivedAssetsInEngland": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Long-lived assets in England, as of the indicated date.",
        "label": "Long-lived assets in England"
       }
      }
     },
     "localname": "LongLivedAssetsInEngland",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_LongLivedAssetsInIreland": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Long-lived assets in Ireland, as of the indicated date.",
        "label": "Long-lived assets in Ireland"
       }
      }
     },
     "localname": "LongLivedAssetsInIreland",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_LongLivedAssetsInTheUnitedStates": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Long-lived assets in the United States, as of the indicated date.",
        "label": "Long-lived assets in the United States"
       }
      }
     },
     "localname": "LongLivedAssetsInTheUnitedStates",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_NeonatalMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Neonatal, during the indicated time period.",
        "label": "Neonatal"
       }
      }
     },
     "localname": "NeonatalMember",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ObstetricsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Obstetrics, during the indicated time period.",
        "label": "Obstetrics"
       }
      }
     },
     "localname": "ObstetricsMember",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_OusMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the OUS, during the indicated time period.",
        "label": "OUS"
       }
      }
     },
     "localname": "OusMember",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_PresentationOfSalesAndSimilarTaxesTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Presentation of Sales and Similar Taxes, during the indicated time period.",
        "label": "Presentation of Sales and Similar Taxes"
       }
      }
     },
     "localname": "PresentationOfSalesAndSimilarTaxesTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPresentationOfSalesAndSimilarTaxesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_PriceRangePerShareExercised": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the description of Price Range Per Share Exercised, during the indicated time period.",
        "label": "Price Range Per Share Exercised"
       }
      }
     },
     "localname": "PriceRangePerShareExercised",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "fil_PriceRangePerShareExpired": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the description of Price Range Per Share Expired, during the indicated time period.",
        "label": "Price Range Per Share Expired"
       }
      }
     },
     "localname": "PriceRangePerShareExpired",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "fil_PriceRangePerShareGranted": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the description of Price Range Per Share Granted, during the indicated time period.",
        "label": "Price Range Per Share Granted"
       }
      }
     },
     "localname": "PriceRangePerShareGranted",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "fil_PriceRangePerShareOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the description of Price Range Per Share Outstanding, during the indicated time period.",
        "label": "Price Range Per Share Outstanding"
       }
      }
     },
     "localname": "PriceRangePerShareOutstanding",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "fil_PriceRangePerShareTotalExercisable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the description of Price Range Per Share Total Exercisable, during the indicated time period.",
        "label": "Price Range Per Share Total Exercisable"
       }
      }
     },
     "localname": "PriceRangePerShareTotalExercisable",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "fil_ProductSaleAndPurchaseCommitmentsTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Note 12 - Product Sale and Purchase Commitments, during the indicated time period.",
        "label": "Note 12 - Product Sale and Purchase Commitments"
       }
      }
     },
     "localname": "ProductSaleAndPurchaseCommitmentsTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitments"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_PropertyPlantAndEquipmentByLocationTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Property Plant and Equipment by Location, during the indicated time period.",
        "label": "Property Plant and Equipment by Location"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByLocationTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_Range1Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Range 1, during the indicated time period.",
        "label": "Range 1"
       }
      }
     },
     "localname": "Range1Member",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_Range2Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Range 2, during the indicated time period.",
        "label": "Range 2"
       }
      }
     },
     "localname": "Range2Member",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reconciliation of operating lease liabilities/ payments to operating lease liabilities.",
        "label": "Reconciliation of operating lease liabilities"
       }
      }
     },
     "localname": "ReconciliationOfOperatingLeaseLiabilitiesTableTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Remaining years of exclusive U.S. distribution rights for Femcare's Filshie Clip System, during the indicated time period.",
        "label": "Remaining years of exclusive U.S. distribution rights for Femcare's Filshie Clip System"
       }
      }
     },
     "localname": "RemainingYearsOfExclusiveUSDistributionRightsForFemcaresFilshieClipSystem",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails"
     ],
     "xbrltype": "decimalItemType"
    },
    "fil_RevenuesbyproductcategoryandregionTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Revenues By Product Category And Region, during the indicated time period.",
        "label": "Note 11 - Revenues By Product Category And Region"
       }
      }
     },
     "localname": "RevenuesbyproductcategoryandregionTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegion"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_ScheduleOfGeographicInformationTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Schedule Of Geographic Information, during the indicated time period.",
        "label": "Schedule Of Geographic Information"
       }
      }
     },
     "localname": "ScheduleOfGeographicInformationTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote9GeographicInformationScheduleOfGeographicInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_ScheduleOfLongLivedAssetsByGeographicAreaTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Schedule Of Long-Lived Assets By Geographic Area, during the indicated time period.",
        "label": "Schedule Of Long-Lived Assets By Geographic Area"
       }
      }
     },
     "localname": "ScheduleOfLongLivedAssetsByGeographicAreaTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote10GeographicLongLivedAssetsInformationScheduleOfLongLivedAssetsByGeographicAreaTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_ScheduleofglobalrevenuesbyproductcategoryTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Schedule Of Global Revenues By Product Category, during the indicated time period.",
        "label": "Schedule Of Global Revenues By Product Category"
       }
      }
     },
     "localname": "ScheduleofglobalrevenuesbyproductcategoryTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_ScheduleofousrevenuesbyproductcategoryTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the textual narrative disclosure of Schedule Of OUS Revenues By Product Category, during the indicated time period.",
        "label": "Schedule Of OUS Revenues By Product Category"
       }
      }
     },
     "localname": "ScheduleofousrevenuesbyproductcategoryTextBlock",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "fil_TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense": {
     "auth_ref": [],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": {
       "order": 6.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the monetary amount of Tax Cuts and Jobs Act of 2017 Global Intangible Low Taxed Income Income Tax Expense, during the indicated time period.",
        "label": "Tax Cuts and Jobs Act of 2017 Global Intangible Low Taxed Income Income Tax Expense"
       }
      }
     },
     "localname": "TaxCutsAndJobsActOf2017GlobalIntangibleLowTaxedIncomeIncomeTaxExpense",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "fil_U.S.AndCanadaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the U.S. and Canada, during the indicated time period.",
        "label": "U.S. and Canada"
       }
      }
     },
     "localname": "U.S.AndCanadaMember",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "fil_WeightedAverageRemainingContractualLifeYears": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the Weighted Average Remaining Contractual Life (Years), as of the indicated date.",
        "label": "Weighted Average Remaining Contractual Life (Years)"
       }
      }
     },
     "localname": "WeightedAverageRemainingContractualLifeYears",
     "nsuri": "http://www.utahmed.com/20211231",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "decimalItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r228",
      "r234",
      "r258",
      "r260",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r420",
      "r423",
      "r446",
      "r447"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_MinimumMember": {
     "auth_ref": [
      "r228",
      "r234",
      "r258",
      "r260",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r420",
      "r423",
      "r446",
      "r447"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Minimum"
       }
      }
     },
     "localname": "MinimumMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ProductOrServiceAxis": {
     "auth_ref": [
      "r155",
      "r238",
      "r239",
      "r388",
      "r419",
      "r421"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service [Axis]"
       }
      }
     },
     "localname": "ProductOrServiceAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_ProductsAndServicesDomain": {
     "auth_ref": [
      "r155",
      "r238",
      "r239",
      "r388",
      "r419",
      "r421"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Product and Service"
       }
      }
     },
     "localname": "ProductsAndServicesDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r228",
      "r234",
      "r245",
      "r258",
      "r260",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r420",
      "r423",
      "r446",
      "r447"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r228",
      "r234",
      "r245",
      "r258",
      "r260",
      "r379",
      "r380",
      "r381",
      "r382",
      "r383",
      "r384",
      "r385",
      "r420",
      "r423",
      "r446",
      "r447"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_ScenarioUnspecifiedDomain": {
     "auth_ref": [
      "r107",
      "r112",
      "r259"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario"
       }
      }
     },
     "localname": "ScenarioUnspecifiedDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r156",
      "r157",
      "r238",
      "r240",
      "r422",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Segment, Geographical"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r156",
      "r157",
      "r238",
      "r240",
      "r422",
      "r432",
      "r437",
      "r438",
      "r439",
      "r440",
      "r441",
      "r442",
      "r443",
      "r444",
      "r445"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_StatementScenarioAxis": {
     "auth_ref": [
      "r107",
      "r112",
      "r211",
      "r259",
      "r377"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Scenario [Axis]"
       }
      }
     },
     "localname": "StatementScenarioAxis",
     "nsuri": "http://fasb.org/srt/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AccountsAndOtherReceivablesNetCurrent": {
     "auth_ref": [],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance, receivable from customers, clients, or other third-parties, and receivables classified as other due within one year or the normal operating cycle, if longer.",
        "label": "Accounts and Other Receivables, Net, Current",
        "totalLabel": "Accounts and Other Receivables, Net, Current"
       }
      }
     },
     "localname": "AccountsAndOtherReceivablesNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableCurrent": {
     "auth_ref": [
      "r37",
      "r375"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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).",
        "label": "Accounts payable"
       }
      }
     },
     "localname": "AccountsPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableGrossCurrent": {
     "auth_ref": [
      "r159",
      "r160"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccountsAndOtherReceivablesNetCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts Receivable, before Allowance for Credit Loss, Current"
       }
      }
     },
     "localname": "AccountsReceivableGrossCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r6",
      "r22",
      "r159",
      "r160"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Accounts &amp; other receivables, net (note 2)"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedIncomeTaxesCurrent": {
     "auth_ref": [
      "r18",
      "r397",
      "r409"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations.",
        "label": "Accrued Income Taxes, Current"
       }
      }
     },
     "localname": "AccruedIncomeTaxesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r39"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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).",
        "label": "Accrued expenses (note 2)",
        "totalLabel": "Accrued expenses (note 2)"
       }
      }
     },
     "localname": "AccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": {
     "auth_ref": [
      "r36",
      "r202"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0
      },
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.",
        "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment",
        "negatedLabel": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment"
       }
      }
     },
     "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccumulatedOtherComprehensiveIncomeLossBeforeTax1": {
     "auth_ref": [],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before tax of increase (decrease) in accumulated equity from transactions and other events and circumstances from non-owner sources, including portion attributable to noncontrolling interest. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners (distributions to owners).",
        "label": "Accumulated other comprehensive loss"
       }
      }
     },
     "localname": "AccumulatedOtherComprehensiveIncomeLossBeforeTax1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalCommonStock": {
     "auth_ref": [
      "r23"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.",
        "label": "Additional paid-in capital"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdditionalPaidInCapitalMember": {
     "auth_ref": [
      "r95",
      "r96",
      "r97",
      "r287",
      "r288",
      "r289",
      "r346"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Additional Paid-In Capitol"
       }
      }
     },
     "localname": "AdditionalPaidInCapitalMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation": {
     "auth_ref": [
      "r235",
      "r236",
      "r295"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in additional paid in capital (APIC) resulting from a tax benefit associated with share-based compensation plan other than an employee stock ownership plan (ESOP). Includes, but is not limited to, excess tax benefit.",
        "label": "Tax benefit attributable to appreciation of stock options"
       }
      }
     },
     "localname": "AdjustmentsToAdditionalPaidInCapitalTaxEffectFromShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income to net cash provided by operating activities"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r262",
      "r283",
      "r293"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "Share-based Payment Arrangement, Expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r28",
      "r162",
      "r173"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AccountsAndOtherReceivablesNetCurrent",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "Accounts Receivable, Allowance for Credit Loss, Current",
        "negatedLabel": "Accounts Receivable, Allowance for Credit Loss, Current"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r79",
      "r188",
      "r195"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Amortization {1}",
        "terseLabel": "Amortization"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r89",
      "r144",
      "r147",
      "r153",
      "r169",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r335",
      "r340",
      "r349",
      "r373",
      "r375",
      "r396",
      "r408"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Total assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "ASSETS"
       }
      }
     },
     "localname": "AssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r7",
      "r8",
      "r49",
      "r89",
      "r169",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r335",
      "r340",
      "r349",
      "r373",
      "r375"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Total current assets",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BuildingAndBuildingImprovementsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Facility held for productive use including, but not limited to, office, production, storage and distribution facilities and any addition, improvement, or renovation to the structure, for example, but not limited to, interior masonry, interior flooring, electrical, and plumbing.",
        "label": "Building and Building Improvements"
       }
      }
     },
     "localname": "BuildingAndBuildingImprovementsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_BuildingsAndImprovementsGross": {
     "auth_ref": [
      "r10",
      "r201"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      },
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation of building structures held for productive use including addition, improvement, or renovation to the structure, including, but not limited to, interior masonry, interior flooring, electrical, and plumbing.",
        "label": "Buildings and Improvements, Gross"
       }
      }
     },
     "localname": "BuildingsAndImprovementsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r4",
      "r33",
      "r81"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Cash {1}",
        "periodEndLabel": "Cash at end of year",
        "periodStartLabel": "Cash at beginning of year",
        "terseLabel": "Cash"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashAndCashEquivalentsPolicyTextBlock": {
     "auth_ref": [
      "r15",
      "r82"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for cash and cash equivalents, including the policy for determining which items are treated as cash equivalents. Other information that may be disclosed includes (1) the nature of any restrictions on the entity's use of its cash and cash equivalents, (2) whether the entity's cash and cash equivalents are insured or expose the entity to credit risk, (3) the classification of any negative balance accounts (overdrafts), and (4) the carrying basis of cash equivalents (for example, at cost) and whether the carrying amount of cash equivalents approximates fair value.",
        "label": "Cash and Cash Equivalents"
       }
      }
     },
     "localname": "CashAndCashEquivalentsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesCashAndCashEquivalentsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r75",
      "r354"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, 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.",
        "label": "Net increase (decrease) in cash and cash equivalents",
        "totalLabel": "Net increase (decrease) in cash and cash equivalents"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r41",
      "r210",
      "r401",
      "r414"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Commitments and contingencies (notes 6 and 12)"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r207",
      "r208",
      "r209",
      "r214",
      "r433"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Note 6 - Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r95",
      "r96",
      "r346"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockParOrStatedValuePerShare": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount or stated value per share of common stock.",
        "label": "Common Stock, Par or Stated Value Per Share"
       }
      }
     },
     "localname": "CommonStockParOrStatedValuePerShare",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "Common Stock, Shares Authorized"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r21"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Common Stock, Shares, Issued"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r21",
      "r235"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "Common Stock, Shares, Outstanding"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheetsParenthetical"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r21",
      "r375"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Common stock, $.01 par value; 50,000 shares authorized, 3,655 shares issued and outstanding in 2021 and 3,643 shares in 2020"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ComprehensiveIncomeMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The change in equity (net assets) of a business enterprise during a period from transactions and other events and circumstances from non-owner sources. It includes all changes in equity during a period except those resulting from investments by owners and distributions to owners.",
        "label": "Comprehensive Income"
       }
      }
     },
     "localname": "ComprehensiveIncomeMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ComprehensiveIncomeNetOfTax": {
     "auth_ref": [
      "r54",
      "r56",
      "r57",
      "r63",
      "r403",
      "r415"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.",
        "label": "Total comprehensive income",
        "totalLabel": "Total comprehensive income"
       }
      }
     },
     "localname": "ComprehensiveIncomeNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConcentrationRiskDisclosureTextBlock": {
     "auth_ref": [
      "r140"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date.",
        "label": "Concentration of Credit Risk"
       }
      }
     },
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesConcentrationOfCreditRiskPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConsolidationPolicyTextBlock": {
     "auth_ref": [
      "r85",
      "r337"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting.  The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary.",
        "label": "Principles of Consolidation"
       }
      }
     },
     "localname": "ConsolidationPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPrinciplesOfConsolidationPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConstructionInProgressGross": {
     "auth_ref": [
      "r201"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      },
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service.",
        "label": "Construction in Progress, Gross"
       }
      }
     },
     "localname": "ConstructionInProgressGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractualObligation": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of contractual obligation, including but not limited to, long-term debt, capital lease obligations, operating lease obligations, purchase obligations, and other commitments.",
        "label": "Contractual Obligation"
       }
      }
     },
     "localname": "ContractualObligation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r67",
      "r388"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.",
        "label": "Cost of goods sold"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CurrentIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r90",
      "r313",
      "r323",
      "r325"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) pertaining to taxable income (loss) from continuing operations.",
        "label": "Current Income Tax Expense (Benefit)"
       }
      }
     },
     "localname": "CurrentIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r79",
      "r90",
      "r314",
      "r323",
      "r324",
      "r325"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.",
        "label": "Deferred income taxes"
       }
      }
     },
     "localname": "DeferredIncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredIncomeTaxLiabilitiesNet": {
     "auth_ref": [
      "r300",
      "r301"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 5.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.",
        "label": "Deferred income taxes (note 7)"
       }
      }
     },
     "localname": "DeferredIncomeTaxLiabilitiesNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsInventory": {
     "auth_ref": [
      "r311",
      "r312"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory.",
        "label": "Deferred Tax Assets, Inventory"
       }
      }
     },
     "localname": "DeferredTaxAssetsInventory",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities": {
     "auth_ref": [
      "r311",
      "r312"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from accrued liabilities.",
        "label": "Deferred Tax Assets, Tax Deferred Expense, Reserves and Accruals, Accrued Liabilities"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts": {
     "auth_ref": [
      "r311",
      "r312"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_DeferredTaxLiabilities",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary difference from allowance for credit loss on accounts receivable.",
        "label": "Deferred Tax Asset, Tax Deferred Expense, Reserve and Accrual, Accounts Receivable, Allowance for Credit Loss"
       }
      }
     },
     "localname": "DeferredTaxAssetsTaxDeferredExpenseReservesAndAccrualsAllowanceForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilities": {
     "auth_ref": [
      "r301",
      "r308"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences without jurisdictional netting.",
        "label": "Deferred Tax Liabilities, Net",
        "negatedTotalLabel": "Deferred Tax Liabilities, Net"
       }
      }
     },
     "localname": "DeferredTaxLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets": {
     "auth_ref": [
      "r311",
      "r312"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of deferred tax liability attributable to taxable temporary differences from intangible assets other than goodwill.",
        "label": "Deferred tax liability - intangible assets"
       }
      }
     },
     "localname": "DeferredTaxLiabilitiesGoodwillAndIntangibleAssetsIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DefinedContributionPlanEmployerDiscretionaryContributionAmount": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of discretionary contributions made by an employer to a defined contribution plan.",
        "label": "Defined Contribution Plan, Employer Discretionary Contribution Amount"
       }
      }
     },
     "localname": "DefinedContributionPlanEmployerDiscretionaryContributionAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlansDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Depreciation": {
     "auth_ref": [
      "r79",
      "r200"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives. Includes production and non-production related depreciation.",
        "label": "Depreciation"
       }
      }
     },
     "localname": "Depreciation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r296"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Note 8 - Options"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8Options"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes"
       }
      }
     },
     "localname": "DisclosureTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_DividendsCommonStockCash": {
     "auth_ref": [
      "r236"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash.",
        "label": "Common stock dividends",
        "negatedLabel": "Common stock dividends"
       }
      }
     },
     "localname": "DividendsCommonStockCash",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r64",
      "r104",
      "r105",
      "r106",
      "r107",
      "r108",
      "r115",
      "r117",
      "r118",
      "r119",
      "r120",
      "r125",
      "r126",
      "r347",
      "r348",
      "r404",
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.",
        "label": "Earnings per common share (basic) (note 1)",
        "verboseLabel": "Earnings per share, basic"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareDiluted": {
     "auth_ref": [
      "r64",
      "r104",
      "r105",
      "r106",
      "r107",
      "r108",
      "r117",
      "r118",
      "r119",
      "r120",
      "r125",
      "r126",
      "r347",
      "r348",
      "r404",
      "r416"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Earnings per common share (diluted) (note 1)",
        "verboseLabel": "Earnings Per Share Diluted"
       }
      }
     },
     "localname": "EarningsPerShareDiluted",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerSharePolicyTextBlock": {
     "auth_ref": [
      "r121",
      "r123"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for computing basic and diluted earnings or loss per share for each class of common stock and participating security. Addresses all significant policy factors, including any antidilutive items that have been excluded from the computation and takes into account stock dividends, splits and reverse splits that occur after the balance sheet date of the latest reporting period but before the issuance of the financial statements.",
        "label": "Earnings Per Share"
       }
      }
     },
     "localname": "EarningsPerSharePolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerSharePolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r121",
      "r123",
      "r124",
      "r127"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Note 16 - Earnings Per Share"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShare"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EffectOfExchangeRateOnCashAndCashEquivalents": {
     "auth_ref": [
      "r354"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 4.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) from the effect of exchange rate changes on cash and cash equivalent balances held in foreign currencies.",
        "label": "Effect of exchange rate changes on cash"
       }
      }
     },
     "localname": "EffectOfExchangeRateOnCashAndCashEquivalents",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount": {
     "auth_ref": [
      "r303"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of reported income tax expense (benefit) in excess of (less than) expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operations, attributable to increase (decrease) from transition tax on accumulated earnings of controlled foreign corporation deemed repatriated pursuant to Tax Cuts and Jobs Act.",
        "label": "Effective Income Tax Rate Reconciliation Tax Cuts And Jobs Act Of 2017 Transition Tax On Accumulated Foreign Earnings Amount"
       }
      }
     },
     "localname": "EffectiveIncomeTaxRateReconciliationTaxCutsAndJobsActOf2017TransitionTaxOnAccumulatedForeignEarningsAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r39"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Employee-related Liabilities, Current"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r284"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions": {
     "auth_ref": [
      "r286"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax benefit from exercise of option under share-based payment arrangement.",
        "label": "Share-based Payment Arrangement, Exercise of Option, Tax Benefit"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromExerciseOfStockOptions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tangible personal property used to produce goods and services.",
        "label": "Equipment"
       }
      }
     },
     "localname": "EquipmentMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r0",
      "r59",
      "r60",
      "r61",
      "r95",
      "r96",
      "r97",
      "r101",
      "r109",
      "r111",
      "r132",
      "r170",
      "r235",
      "r236",
      "r287",
      "r288",
      "r289",
      "r316",
      "r317",
      "r346",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r361",
      "r424",
      "r425",
      "r426",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ExcessTaxBenefitFromShareBasedCompensationOperatingActivities": {
     "auth_ref": [
      "r294"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 9.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Tax benefit attributable to exercise of stock options",
        "negatedLabel": "Tax benefit attributable to exercise of stock options"
       }
      }
     },
     "localname": "ExcessTaxBenefitFromShareBasedCompensationOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedCustomerRelationshipsGross": {
     "auth_ref": [
      "r194"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross carrying amount before accumulated amortization as of the balance sheet date to an asset acquired in a business combination representing a favorable existing relationship with customers having a finite beneficial life.",
        "label": "Finite-Lived Customer Relationships, Gross"
       }
      }
     },
     "localname": "FiniteLivedCustomerRelationshipsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Finite-Lived Intangible Asset, Useful Life"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": {
     "auth_ref": [
      "r194"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": -1.0
      },
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Other intangible assets - accumulated amortization",
        "negatedLabel": "Other intangible assets - accumulated amortization"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": {
     "auth_ref": [
      "r196"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": {
     "auth_ref": [
      "r196"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Five"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": {
     "auth_ref": [
      "r196"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": {
     "auth_ref": [
      "r196"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": {
     "auth_ref": [
      "r196"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r194",
      "r393"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet",
       "weight": 1.0
      },
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_IntangibleAssetsNetExcludingGoodwill",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Other intangible assets (note 2)",
        "totalLabel": "Other intangible assets (note 2)"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedIntangibleAssetsNet": {
     "auth_ref": [
      "r194",
      "r389"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.",
        "label": "Finite-Lived Intangible Assets, Net",
        "totalLabel": "Finite-Lived Intangible Assets, Net"
       }
      }
     },
     "localname": "FiniteLivedIntangibleAssetsNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedNoncompeteAgreementsGross": {
     "auth_ref": [
      "r194"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross carrying amount before accumulated amortization as of the balance sheet date of payments made to third parties in exchange for their agreement not to engage in specified competitive practices in specified geographic territories for a specified period of time.",
        "label": "Finite-Lived Noncompete Agreements, Gross"
       }
      }
     },
     "localname": "FiniteLivedNoncompeteAgreementsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedPatentsGross": {
     "auth_ref": [
      "r194"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross carrying amount before accumulated amortization as of the balance sheet date of the costs pertaining to the exclusive legal rights granted to the owner of the patent to exploit an invention or a process for a period of time specified by law. Such costs may have been expended to directly apply and receive patent rights, or to acquire such rights.",
        "label": "Finite-Lived Patents, Gross"
       }
      }
     },
     "localname": "FiniteLivedPatentsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FiniteLivedTrademarksGross": {
     "auth_ref": [
      "r194"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Gross carrying amount before accumulated amortization as of the balance sheet date for the rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style for a specified period of time.",
        "label": "Finite-Lived Trademarks, Gross"
       }
      }
     },
     "localname": "FiniteLivedTrademarksGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinitelivedIntangibleAssetsAcquired1": {
     "auth_ref": [
      "r190"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.",
        "label": "Finite-lived Intangible Assets Acquired"
       }
      }
     },
     "localname": "FinitelivedIntangibleAssetsAcquired1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock": {
     "auth_ref": [
      "r362"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for (1) transactions denominated in a currency other than the reporting enterprise's functional currency, (2) translating foreign currency financial statements that are incorporated into the financial statements of the reporting enterprise by consolidation, combination, or the equity method of accounting, and (3) remeasurement of the financial statements of a foreign reporting enterprise in a hyperinflationary economy.",
        "label": "Translation of Foreign Currencies"
       }
      }
     },
     "localname": "ForeignCurrencyTransactionsAndTranslationsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesTranslationOfForeignCurrenciesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GainLossOnDispositionOfAssets": {
     "auth_ref": [
      "r79",
      "r199",
      "r204"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, excluding oil and gas property and timber property.",
        "label": "Loss/(Gain) on disposal of assets",
        "negatedLabel": "Loss/(Gain) on disposal of assets"
       }
      }
     },
     "localname": "GainLossOnDispositionOfAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r68"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total of expenses of managing and administering the affairs of an entity, including affiliates of the reporting entity, which are not directly or indirectly associated with the manufacture, sale or creation of a product or product line.",
        "label": "General and administrative"
       }
      }
     },
     "localname": "GeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Goodwill": {
     "auth_ref": [
      "r179",
      "r181",
      "r375",
      "r395"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Goodwill",
        "periodEndLabel": "Total Goodwill as of December 31",
        "periodStartLabel": "Balance as of January 1"
       }
      }
     },
     "localname": "Goodwill",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillAndIntangibleAssetsPolicyTextBlock": {
     "auth_ref": [
      "r184",
      "r191"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for goodwill and intangible assets. This accounting policy also may address how an entity assesses and measures impairment of goodwill and intangible assets.",
        "label": "Intangible Assets"
       }
      }
     },
     "localname": "GoodwillAndIntangibleAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": {
     "auth_ref": [
      "r183"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Effect of foreign exchange"
       }
      }
     },
     "localname": "GoodwillForeignCurrencyTranslationGainLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GoodwillImpairmentLoss": {
     "auth_ref": [
      "r79",
      "r180",
      "r182",
      "r185"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of loss from the write-down of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.",
        "label": "Subtractions as a result of impairment"
       }
      }
     },
     "localname": "GoodwillImpairmentLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r66",
      "r89",
      "r144",
      "r146",
      "r149",
      "r152",
      "r154",
      "r169",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r349"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "Gross profit",
        "totalLabel": "Gross profit",
        "verboseLabel": "Gross Profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock": {
     "auth_ref": [
      "r198",
      "r205"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for recognizing and measuring the impairment of long-lived assets. An entity also may disclose its accounting policy for long-lived assets to be sold. This policy excludes goodwill and intangible assets.",
        "label": "Long-lived Assets"
       }
      }
     },
     "localname": "ImpairmentOrDisposalOfLongLivedAssetsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLongLivedAssetsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic": {
     "auth_ref": [
      "r91",
      "r326"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to domestic operations.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Domestic"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesDomestic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r62",
      "r144",
      "r146",
      "r149",
      "r152",
      "r154",
      "r394",
      "r402",
      "r406",
      "r417"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ProfitLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Income before provision for income taxes",
        "totalLabel": "Income before provision for income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign": {
     "auth_ref": [
      "r91",
      "r326"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of earnings or loss from continuing operations before income taxes that is attributable to foreign operations, which is defined as Income or Loss generated from operations located outside the entity's country of domicile.",
        "label": "Income (Loss) from Continuing Operations before Income Taxes, Foreign"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesForeign",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxDisclosureTextBlock": {
     "auth_ref": [
      "r92",
      "r304",
      "r306",
      "r310",
      "r321",
      "r327",
      "r329",
      "r330",
      "r331"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Note 7 - Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxes"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r93",
      "r110",
      "r111",
      "r143",
      "r302",
      "r322",
      "r328",
      "r418"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ProfitLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.",
        "label": "Provision for income taxes (note 7)",
        "totalLabel": "Provision for income taxes (note 7)"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxPolicyTextBlock": {
     "auth_ref": [
      "r58",
      "r298",
      "r299",
      "r306",
      "r307",
      "r309",
      "r315"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for income taxes, which may include its accounting policies for recognizing and measuring deferred tax assets and liabilities and related valuation allowances, recognizing investment tax credits, operating loss carryforwards, tax credit carryforwards, and other carryforwards, methodologies for determining its effective income tax rate and the characterization of interest and penalties in the financial statements.",
        "label": "Income Taxes"
       }
      }
     },
     "localname": "IncomeTaxPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IncomeTaxReconciliationDeductionsQualifiedProductionActivities": {
     "auth_ref": [
      "r303"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and the expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to deduction for qualified production activity.",
        "label": "Effective Income Tax Rate Reconciliation, Deduction, Qualified Production Activity, Amount",
        "negatedLabel": "Effective Income Tax Rate Reconciliation, Deduction, Qualified Production Activity, Amount"
       }
      }
     },
     "localname": "IncomeTaxReconciliationDeductionsQualifiedProductionActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationForeignIncomeTaxRateDifferential": {
     "auth_ref": [
      "r303"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to foreign income tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, Foreign Income Tax Rate Differential, Amount"
       }
      }
     },
     "localname": "IncomeTaxReconciliationForeignIncomeTaxRateDifferential",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate": {
     "auth_ref": [
      "r303"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of income tax expense or benefit for the period computed by applying the domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Effective Income Tax Rate Reconciliation at Federal Statutory Income Tax Rate, Amount"
       }
      }
     },
     "localname": "IncomeTaxReconciliationIncomeTaxExpenseBenefitAtFederalStatutoryIncomeTaxRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationOtherAdjustments": {
     "auth_ref": [
      "r303"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": {
       "order": 8.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments.",
        "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount"
       }
      }
     },
     "localname": "IncomeTaxReconciliationOtherAdjustments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": {
     "auth_ref": [
      "r303"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeTaxExpenseBenefit",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit).",
        "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount"
       }
      }
     },
     "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeTaxesPaid": {
     "auth_ref": [
      "r76",
      "r83"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The amount of cash paid during the current period to foreign, federal, state, and local authorities as taxes on income.",
        "label": "Cash paid during the period for income taxes"
       }
      }
     },
     "localname": "IncomeTaxesPaid",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayable": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 14.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Accounts payable {1}",
        "terseLabel": "Accounts payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "Accounts receivable",
        "negatedLabel": "Accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedLiabilities": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 15.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid.",
        "label": "Accrued expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 12.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Inventories",
        "negatedLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherReceivables": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in receivables classified as other.",
        "label": "Other receivables",
        "negatedLabel": "Other receivables"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherReceivables",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.",
        "label": "Prepaid expenses and other current assets {1}",
        "negatedLabel": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsDisclosureTextBlock": {
     "auth_ref": [
      "r197"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all or part of the information related to intangible assets.",
        "label": "Note 15 - CSI Distribution Agreement Purchase Disclosure"
       }
      }
     },
     "localname": "IntangibleAssetsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosure"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r187",
      "r192"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.",
        "label": "Other intangible assets, net (note 2)",
        "totalLabel": "Other intangible assets, net (note 2)"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestPaid": {
     "auth_ref": [
      "r83"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash paid for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to 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; classified as operating and investing activities.",
        "label": "Cash paid during the period for interest"
       }
      }
     },
     "localname": "InterestPaid",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestReceivableAndOtherAssets": {
     "auth_ref": [],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_AccountsAndOtherReceivablesNetCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest receivable and assets classified as other.",
        "label": "Interest Receivable and Other Assets"
       }
      }
     },
     "localname": "InterestReceivableAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r29",
      "r177"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Inventory, Finished Goods, Net of Reserves"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r5",
      "r46",
      "r375"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventories (note 2)",
        "totalLabel": "Inventories (note 2)"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryPolicyTextBlock": {
     "auth_ref": [
      "r14",
      "r47",
      "r86",
      "r128",
      "r175",
      "r176",
      "r178",
      "r386"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of inventory accounting policy for inventory classes, including, but not limited to, basis for determining inventory amounts, methods by which amounts are added and removed from inventory classes, loss recognition on impairment of inventories, and situations in which inventories are stated above cost.",
        "label": "Inventories {1}",
        "terseLabel": "Inventories"
       }
      }
     },
     "localname": "InventoryPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesInventoriesPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryRawMaterials": {
     "auth_ref": [
      "r45"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of raw materials expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventory, Raw Materials, Gross"
       }
      }
     },
     "localname": "InventoryRawMaterials",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcess": {
     "auth_ref": [
      "r44"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer.",
        "label": "Inventory, Work in Process, Gross"
       }
      }
     },
     "localname": "InventoryWorkInProcess",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_Land": {
     "auth_ref": [
      "r9",
      "r35"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      },
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depletion of real estate held for productive use, excluding land held for sale.",
        "label": "Land"
       }
      }
     },
     "localname": "Land",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LegalCostsPolicyTextBlock": {
     "auth_ref": [
      "r213"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for legal costs incurred to protect or defend the entity's assets and rights, or to obtain assets, including monetary damages, or to obtain rights.",
        "label": "Legal Costs"
       }
      }
     },
     "localname": "LegalCostsPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [
      "r369"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of undiscounted cash flows of lessee's operating lease liability. Includes, but is not limited to, reconciliation of undiscounted cash flows to operating lease liability recognized in statement of financial position.",
        "label": "Lessee, Operating Lease, Liability, Maturity"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r369"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "Lessee, Operating Lease, Liability, to be Paid"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": {
     "auth_ref": [
      "r369"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r369"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year One"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": {
     "auth_ref": [
      "r369"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r369"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r369"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r369"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r369"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount",
        "negatedLabel": "Lessee, Operating Lease, Liability, Undiscounted Excess Amount"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeasesTextBlock": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability.",
        "label": "Note 14 - Leases"
       }
      }
     },
     "localname": "LesseeOperatingLeasesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14Leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r38",
      "r89",
      "r148",
      "r169",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r336",
      "r340",
      "r341",
      "r349",
      "r373",
      "r374"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Total liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r27",
      "r89",
      "r169",
      "r349",
      "r375",
      "r399",
      "r412"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "Total liabilities and stockholders' equity",
        "totalLabel": "Total liabilities and stockholders' equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "LIABILITIES AND STOCKHOLDERS' EQUITY"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r40",
      "r89",
      "r169",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r336",
      "r340",
      "r341",
      "r349",
      "r373",
      "r374",
      "r375"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Total current liabilities",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LitigationReserve": {
     "auth_ref": [
      "r41",
      "r210"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate carrying amount of the estimated litigation liability for known or estimated probable loss from litigation, which may include attorneys' fees and other litigation costs.",
        "label": "Estimated Litigation Liability"
       }
      }
     },
     "localname": "LitigationReserve",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesLegalCostsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LitigationReserveCurrent": {
     "auth_ref": [
      "r41",
      "r210",
      "r212"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount of reserve for known or estimated probable loss from litigation, which may include attorneys' fees and other litigation costs, which is expected to be paid within one year of the date of the statement of financial position.",
        "label": "Estimated Litigation Liability, Current"
       }
      }
     },
     "localname": "LitigationReserveCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r19",
      "r229",
      "r230",
      "r231",
      "r232",
      "r398",
      "r410"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.",
        "label": "Long-term Debt"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebtDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtTextBlock": {
     "auth_ref": [
      "r233"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-term debt.",
        "label": "Note 5 - Long-term Debt"
       }
      }
     },
     "localname": "LongTermDebtTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote5LongTermDebt"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_MachineryAndEquipmentGross": {
     "auth_ref": [
      "r10",
      "r201"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      },
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails": {
       "order": 3.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated depreciation of tangible personal property used to produce goods and services, including, but is not limited to, tools, dies and molds, computer and office equipment.",
        "label": "Machinery and Equipment, Gross"
       }
      }
     },
     "localname": "MachineryAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 3.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Net cash (used in) financing activities",
        "totalLabel": "Net cash (used in) financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r75"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Net cash (used in) investing activities",
        "totalLabel": "Net cash (used in) investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r75",
      "r77",
      "r80"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Net cash provided by operating activities",
        "totalLabel": "Net cash provided by operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r2",
      "r98",
      "r99",
      "r102",
      "r103",
      "r112",
      "r113",
      "r114",
      "r167",
      "r168",
      "r171",
      "r172",
      "r241",
      "r242",
      "r243",
      "r244",
      "r290",
      "r318",
      "r319",
      "r320",
      "r345",
      "r350",
      "r351",
      "r352",
      "r372",
      "r390",
      "r391",
      "r392",
      "r427",
      "r428",
      "r429",
      "r430",
      "r431",
      "r461"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.",
        "label": "Note 17 - Recent Accounting Pronouncements"
       }
      }
     },
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "New Accounting Pronouncements, Policy"
       }
      }
     },
     "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote17RecentAccountingPronouncementsNewAccountingPronouncementsPolicyPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r144",
      "r146",
      "r149",
      "r152",
      "r154"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The net result for the period of deducting operating expenses from operating revenues.",
        "label": "Operating income",
        "totalLabel": "Operating income"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseCost": {
     "auth_ref": [
      "r366",
      "r370"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of single lease cost, calculated by allocation of remaining cost of lease over remaining lease term. Includes, but is not limited to, single lease cost, after impairment of right-of-use asset, calculated by amortization of remaining right-of-use asset and accretion of lease liability.",
        "label": "Operating Lease, Cost"
       }
      }
     },
     "localname": "OperatingLeaseCost",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r364"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Operating Lease, Liability"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r364"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "Operating Lease, Liability, Current"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes current operating lease liability.",
        "label": "Operating Lease, Liability, Current, Statement of Financial Position"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrentStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r364"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "Long term lease liability"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r363"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      },
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "Right-of-Use Asset"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesReconciliationOfOperatingLeaseLiabilitiesDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": {
     "auth_ref": [
      "r79"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense for right-of-use asset from operating lease.",
        "label": "Amortization of operating lease assets"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList": {
     "auth_ref": [
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates line item in statement of financial position that includes operating lease right-of-use asset.",
        "label": "Operating Lease, Right-of-Use Asset, Statement of Financial Position"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAssetStatementOfFinancialPositionExtensibleList",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "enumerationSetItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r368",
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "Operating Lease, Weighted Average Discount Rate, Percent"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r367",
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Operating Lease, Weighted Average Remaining Lease Term"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote14LeasesLesseeOperatingLeaseLiabilityMaturityDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OtherAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r11",
      "r12",
      "r13",
      "r39"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails": {
       "order": 4.0,
       "parentTag": "us-gaap_AccruedLiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expenses incurred but not yet paid classified as other, due within one year or the normal operating cycle, if longer.",
        "label": "Other"
       }
      }
     },
     "localname": "OtherAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherAssetsCurrent": {
     "auth_ref": [
      "r48",
      "r375"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of current assets classified as other.",
        "label": "Prepaid expenses and other current assets"
       }
      }
     },
     "localname": "OtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": {
     "auth_ref": [
      "r51"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.",
        "label": "Foreign currency translation adjustment",
        "verboseLabel": "Foreign currency translation net of taxes of $0 in all periods"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax": {
     "auth_ref": [
      "r51",
      "r52",
      "r353",
      "r360"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax expense (benefit), after reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.",
        "label": "Other Comprehensive Income (Loss), Foreign Currency Translation Adjustment, Tax"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossForeignCurrencyTranslationAdjustmentTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncomeParenthetical"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other comprehensive income (loss)"
       }
      }
     },
     "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherFiniteLivedIntangibleAssetsGross": {
     "auth_ref": [
      "r194"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails": {
       "order": 5.0,
       "parentTag": "us-gaap_FiniteLivedIntangibleAssetsGross",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount before accumulated amortization of finite-lived intangible assets classified as other.",
        "label": "Other Finite-Lived Intangible Assets, Gross"
       }
      }
     },
     "localname": "OtherFiniteLivedIntangibleAssetsGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherInterestAndDividendIncome": {
     "auth_ref": [
      "r405"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after discount, accretion and premium amortization, of interest income and dividend income classified as other.",
        "label": "Dividend and interest income"
       }
      }
     },
     "localname": "OtherInterestAndDividendIncome",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r70"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 4.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other, net"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsForRepurchaseOfCommonStock": {
     "auth_ref": [
      "r73"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to reacquire common stock during the period.",
        "label": "Common stock purchased and retired {1}",
        "negatedLabel": "Common stock purchased and retired"
       }
      }
     },
     "localname": "PaymentsForRepurchaseOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfDividends": {
     "auth_ref": [
      "r73"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 3.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Cash outflow in the form of capital distributions and dividends to common shareholders, preferred shareholders and noncontrolling interests.",
        "label": "Dividends paid",
        "negatedLabel": "Dividends paid"
       }
      }
     },
     "localname": "PaymentsOfDividends",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireIntangibleAssets": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill.",
        "label": "Intangible assets",
        "negatedLabel": "Intangible assets"
       }
      }
     },
     "localname": "PaymentsToAcquireIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r71"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Property and equipment",
        "negatedLabel": "Property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": {
     "auth_ref": [
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256",
      "r257",
      "r261"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for retirement benefits.",
        "label": "Note 13 - Employee Benefit Plans"
       }
      }
     },
     "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote13EmployeeBenefitPlans"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PolicyTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Policies"
       }
      }
     },
     "localname": "PolicyTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_ProceedsFromIssuanceOfCommonStock": {
     "auth_ref": [
      "r72"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from the additional capital contribution to the entity.",
        "label": "Proceeds from issuance of common stock - options"
       }
      }
     },
     "localname": "ProceedsFromIssuanceOfCommonStock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrual": {
     "auth_ref": [
      "r215",
      "r216",
      "r400"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers.",
        "label": "Standard and Extended Product Warranty Accrual"
       }
      }
     },
     "localname": "ProductWarrantyAccrual",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote6CommitmentsAndContingenciesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProfitLoss": {
     "auth_ref": [
      "r3",
      "r53",
      "r55",
      "r61",
      "r74",
      "r89",
      "r100",
      "r110",
      "r111",
      "r144",
      "r146",
      "r149",
      "r152",
      "r154",
      "r169",
      "r217",
      "r218",
      "r219",
      "r221",
      "r222",
      "r223",
      "r224",
      "r225",
      "r226",
      "r227",
      "r334",
      "r338",
      "r339",
      "r343",
      "r344",
      "r348",
      "r349",
      "r406"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.",
        "label": "Net income",
        "totalLabel": "Net income",
        "verboseLabel": "Net Income"
       }
      }
     },
     "localname": "ProfitLoss",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentByTypeAxis": {
     "auth_ref": [
      "r36",
      "r203"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale.",
        "label": "Long-Lived Tangible Asset [Axis]"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentDisclosureTextBlock": {
     "auth_ref": [
      "r206",
      "r434",
      "r435",
      "r436"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Note 4 - Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipment"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentGross": {
     "auth_ref": [
      "r35",
      "r201"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      },
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_PropertyPlantAndEquipmentNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Property, Plant and Equipment, Gross",
        "totalLabel": "Property, Plant and Equipment, Gross"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentGross",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r16",
      "r17",
      "r203",
      "r375",
      "r407",
      "r413"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      },
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Property and equipment, net (notes 4 and 10)",
        "totalLabel": "Property and equipment, net (notes 4 and 10)"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentPolicyTextBlock": {
     "auth_ref": [
      "r34",
      "r203",
      "r434",
      "r435"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for long-lived, physical asset used in normal conduct of business and not intended for resale. Includes, but is not limited to, work of art, historical treasure, and similar asset classified as collections.",
        "label": "Property and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTextBlock": {
     "auth_ref": [
      "r16",
      "r203"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation.",
        "label": "Property, Plant and Equipment"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentTypeDomain": {
     "auth_ref": [
      "r16",
      "r201"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Listing of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale. Examples include land, buildings, machinery and equipment, and other types of furniture and equipment including, but not limited to, office equipment, furniture and fixtures, and computer equipment and software.",
        "label": "Long-Lived Tangible Asset"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentUsefulLife": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Useful life of long lived, physical assets used in the normal conduct of business and not intended for resale, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. Examples include, but not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.",
        "label": "Property, Plant and Equipment, Useful Life"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentUsefulLife",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r65",
      "r174"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable.",
        "label": "Provision for losses on accounts receivable"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_QuarterlyFinancialInformationTextBlock": {
     "auth_ref": [
      "r130",
      "r131"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for quarterly financial data. Includes, but is not limited to, tabular presentation of financial information for fiscal quarters, effect of year-end adjustments, and an explanation of matters or transactions that affect comparability of the information.",
        "label": "Note 3 - Quarterly Results of Operations (Unaudited)"
       }
      }
     },
     "localname": "QuarterlyFinancialInformationTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnaudited"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ReceivablesPolicyTextBlock": {
     "auth_ref": [
      "r161",
      "r164",
      "r165",
      "r166"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for receivable. Includes, but is not limited to, accounts receivable and financing receivable.",
        "label": "Accounts Receivable"
       }
      }
     },
     "localname": "ReceivablesPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesAccountsReceivablePolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ResearchAndDevelopmentExpense": {
     "auth_ref": [
      "r297",
      "r387",
      "r448"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use.",
        "label": "Research and development"
       }
      }
     },
     "localname": "ResearchAndDevelopmentExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r24",
      "r236",
      "r291",
      "r375",
      "r411",
      "r427",
      "r431"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 4.0,
       "parentTag": "us-gaap_StockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained earnings"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r0",
      "r95",
      "r96",
      "r97",
      "r101",
      "r109",
      "r111",
      "r170",
      "r287",
      "r288",
      "r289",
      "r316",
      "r317",
      "r346",
      "r424",
      "r426"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": {
     "auth_ref": [
      "r141",
      "r142",
      "r145",
      "r150",
      "r151",
      "r155",
      "r156",
      "r158",
      "r237",
      "r238",
      "r388"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise.",
        "label": "Sales, net (notes 1, 3, 9 and 11)",
        "verboseLabel": "Net Sales"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerExcludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueRecognitionPolicyTextBlock": {
     "auth_ref": [
      "r87",
      "r88"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for revenue. Includes revenue from contract with customer and from other sources.",
        "label": "Revenue Recognition"
       }
      }
     },
     "localname": "RevenueRecognitionPolicyTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesRevenueRecognitionPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RoyaltyIncomeNonoperating": {
     "auth_ref": [
      "r69"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 3.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Ancillary revenue earned during the period from the consideration paid to the entity for the use of its rights and property by another party. Examples include licensing the use of copyrighted materials and leasing the extraction of natural resources.",
        "label": "Royalty income (note 12)"
       }
      }
     },
     "localname": "RoyaltyIncomeNonoperating",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote12ProductSaleAndPurchaseCommitmentsDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": {
     "auth_ref": [
      "r43"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables.",
        "label": "Schedule of Accounts and Other Receivables"
       }
      }
     },
     "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccountsAndOtherReceivablesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of accrued liabilities.",
        "label": "Schedule of Accrued Expenses"
       }
      }
     },
     "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfAccruedExpensesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock": {
     "auth_ref": [
      "r315"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of income tax expense attributable to continuing operations for each year presented including, but not limited to: current tax expense (benefit), deferred tax expense (benefit), investment tax credits, government grants, the benefits of operating loss carryforwards, tax expense that results from allocating certain tax benefits either directly to contributed capital or to reduce goodwill or other noncurrent intangible assets of an acquired entity, adjustments of a deferred tax liability or asset for enacted changes in tax laws or rates or a change in the tax status of the entity, and adjustments of the beginning-of-the-year balances of a valuation allowance because of a change in circumstances that causes a change in judgment about the realizability of the related deferred tax asset in future years.",
        "label": "Schedule of Components of Income Tax Expense (Benefit)"
       }
      }
     },
     "localname": "ScheduleOfComponentsOfIncomeTaxExpenseBenefitTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfComponentsOfIncomeTaxExpenseBenefitTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock": {
     "auth_ref": [
      "r308"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the components of net deferred tax asset or liability recognized in an entity's statement of financial position, including the following: the total of all deferred tax liabilities, the total of all deferred tax assets, the total valuation allowance recognized for deferred tax assets.",
        "label": "Schedule of Deferred Tax Assets and Liabilities"
       }
      }
     },
     "localname": "ScheduleOfDeferredTaxAssetsAndLiabilitiesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfDeferredTaxAssetsAndLiabilitiesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r120"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Earnings Per Share, Basic and Diluted"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock": {
     "auth_ref": [
      "r303"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the reconciliation using percentage or dollar amounts of the reported amount of income tax expense attributable to continuing operations for the year to the amount of income tax expense that would result from applying domestic federal statutory tax rates to pretax income from continuing operations.",
        "label": "Schedule of Effective Income Tax Rate Reconciliation"
       }
      }
     },
     "localname": "ScheduleOfEffectiveIncomeTaxRateReconciliationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfEffectiveIncomeTaxRateReconciliationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": {
     "auth_ref": [
      "r189",
      "r193"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment.",
        "label": "Schedule of Finite-Lived Intangible Assets"
       }
      }
     },
     "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfFiniteLivedIntangibleAssetsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfGoodwillTextBlock": {
     "auth_ref": [
      "r184",
      "r186"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.",
        "label": "Schedule of Goodwill"
       }
      }
     },
     "localname": "ScheduleOfGoodwillTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfGoodwillTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock": {
     "auth_ref": [
      "r90"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of income before income tax between domestic and foreign jurisdictions.",
        "label": "Schedule of Income before Income Tax, Domestic and Foreign"
       }
      }
     },
     "localname": "ScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote7IncomeTaxesScheduleOfIncomeBeforeIncomeTaxDomesticAndForeignTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r14",
      "r30",
      "r31",
      "r32"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Schedule of Inventory, Current"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccountsScheduleOfInventoryCurrentTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfQuarterlyFinancialInformationTableTextBlock": {
     "auth_ref": [
      "r129"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of quarterly financial data. Includes, but is not limited to, financial information for fiscal quarters, cumulative effect of a change in accounting principle and earnings per share data.",
        "label": "Quarterly Financial Information"
       }
      }
     },
     "localname": "ScheduleOfQuarterlyFinancialInformationTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote3QuarterlyResultsOfOperationsUnauditedQuarterlyFinancialInformationTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock": {
     "auth_ref": [
      "r285"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of option exercise prices, by grouped ranges, including the upper and lower limits of the price range, the number of shares under option, weighted average exercise price and remaining contractual option terms.",
        "label": "Schedule of Share-based Compensation, Shares Authorized under Stock Option Plans, by Exercise Price Range"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": {
     "auth_ref": [
      "r266",
      "r273",
      "r276"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Schedule of Share-based Compensation, Stock Options, Activity"
       }
      }
     },
     "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": {
     "auth_ref": [
      "r277"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Schedule of Share-based Payment Award, Stock Options, Valuation Assumptions"
       }
      }
     },
     "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock": {
     "auth_ref": [
      "r122"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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).",
        "label": "Schedule of Weighted Average Number of Shares"
       }
      }
     },
     "localname": "ScheduleOfWeightedAverageNumberOfSharesTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesTables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingAndMarketingExpense": {
     "auth_ref": [],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate total amount of expenses directly related to the marketing or selling of products or services.",
        "label": "Sales and marketing"
       }
      }
     },
     "localname": "SellingAndMarketingExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfIncome"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r78"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 8.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for share-based payment arrangement.",
        "label": "Stock-based compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments": {
     "auth_ref": [
      "r280"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The estimated amount of dividends to be paid to holders of the underlying shares (expected dividends) over the option's term. Dividends are taken into account because payment of dividends to shareholders reduces the fair value of the underlying shares, and option holders generally do not receive dividends.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Dividend Payments"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendPayments",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": {
     "auth_ref": [
      "r279"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Volatility Rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": {
     "auth_ref": [
      "r281"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Risk Free Interest Rate"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": {
     "auth_ref": [
      "r264"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares authorized for issuance under share-based payment arrangement.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Number of Shares Authorized"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": {
     "auth_ref": [
      "r268"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercisable, Number"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue": {
     "auth_ref": [
      "r275"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Exercises in Period, Intrinsic Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisesInPeriodTotalIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod": {
     "auth_ref": [
      "r271"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options or other stock instruments for which the right to exercise has lapsed under the terms of the plan agreements.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Expirations in Period"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExpirationsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": {
     "auth_ref": [
      "r269"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net number of share options (or share units) granted during the period.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Net of Forfeitures"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": {
     "auth_ref": [
      "r274"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": {
     "auth_ref": [
      "r285"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Intrinsic Value"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": {
     "auth_ref": [
      "r267",
      "r285"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of options outstanding, including both vested and non-vested options.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Options, Outstanding, Number"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationOptionAndIncentivePlansPolicy": {
     "auth_ref": [
      "r263",
      "r265"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for award under share-based payment arrangement. Includes, but is not limited to, methodology and assumption used in measuring cost.",
        "label": "Stock-based Compensation"
       }
      }
     },
     "localname": "ShareBasedCompensationOptionAndIncentivePlansPolicy",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesStockBasedCompensationPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit": {
     "auth_ref": [
      "r282"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The floor of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Lower Range Limit"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeLowerRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions": {
     "auth_ref": [
      "r272"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding exercisable stock options as of the balance sheet date in the customized range of exercise prices for which the market and performance vesting condition has been satisfied.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Shares Exercisable"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfExercisableOptions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions": {
     "auth_ref": [
      "r267"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The number of shares reserved for issuance pertaining to the outstanding stock options as of the balance sheet date for all option plans in the customized range of exercise prices.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Shares Outstanding"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeNumberOfOutstandingOptions",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit": {
     "auth_ref": [
      "r282"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The ceiling of a customized range of exercise prices for purposes of disclosing shares potentially issuable under outstanding stock option awards on all stock option plans and other required information pertaining to awards in the customized range.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Upper Range Limit"
       }
      }
     },
     "localname": "ShareBasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeUpperRangeLimit",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": {
     "auth_ref": [
      "r278",
      "r292"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "Share-based Compensation Arrangement by Share-based Payment Award, Fair Value Assumptions, Expected Term"
       }
      }
     },
     "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsDetails"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1": {
     "auth_ref": [
      "r268"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average exercise price as of the balance sheet date for those equity-based payment arrangements exercisable and outstanding.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Exercisable, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeExercisableOptionsWeightedAverageExercisePrice1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1": {
     "auth_ref": [
      "r267"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The weighted average price as of the balance sheet date at which grantees could acquire the underlying shares with respect to all outstanding stock options which are in the customized range of exercise prices.",
        "label": "Share-based Payment Arrangement, Option, Exercise Price Range, Outstanding, Weighted Average Exercise Price"
       }
      }
     },
     "localname": "SharebasedCompensationSharesAuthorizedUnderStockOptionPlansExercisePriceRangeOutstandingOptionsWeightedAverageExercisePriceBeginningBalance1",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "Equity Balance, shares",
        "periodEndLabel": "Equity Balance, shares",
        "periodStartLabel": "Equity Balance, shares"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SignificantAccountingPoliciesTextBlock": {
     "auth_ref": [
      "r84",
      "r94"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for all significant accounting policies of the reporting entity.",
        "label": "Note 1 - Summary of Significant Accounting Policies"
       }
      }
     },
     "localname": "SignificantAccountingPoliciesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r0",
      "r42",
      "r59",
      "r60",
      "r61",
      "r95",
      "r96",
      "r97",
      "r101",
      "r109",
      "r111",
      "r132",
      "r170",
      "r235",
      "r236",
      "r287",
      "r288",
      "r289",
      "r316",
      "r317",
      "r346",
      "r355",
      "r356",
      "r357",
      "r358",
      "r359",
      "r361",
      "r424",
      "r425",
      "r426",
      "r460"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r95",
      "r96",
      "r97",
      "r132",
      "r388"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfGlobalRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote11RevenuesByProductCategoryAndRegionScheduleOfOusRevenuesByProductCategoryDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote15CsiDistributionAgreementPurchaseDisclosureDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIntangibleAssetsDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesPropertyAndEquipmentDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote4PropertyAndEquipmentPropertyPlantAndEquipmentByLocationDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationSharesAuthorizedUnderStockOptionPlansByExercisePriceRangeDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": {
     "auth_ref": [
      "r20",
      "r21",
      "r235",
      "r236",
      "r270"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of share options (or share units) exercised during the current period.",
        "label": "Common stock issued upon exercise of employee stock options, shares"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote8OptionsScheduleOfShareBasedCompensationStockOptionsActivityDetails",
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": {
     "auth_ref": [
      "r42",
      "r235",
      "r236"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value of stock issued as a result of the exercise of stock options.",
        "label": "Common stock issued upon exercise of employee stock options"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueStockOptionsExercised",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockOptionPlanExpense": {
     "auth_ref": [
      "r79"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncash expense for option under share-based payment arrangement.",
        "label": "Stock option compensation expense"
       }
      }
     },
     "localname": "StockOptionPlanExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": {
     "auth_ref": [
      "r20",
      "r21",
      "r235",
      "r236"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares that have been repurchased and retired during the period.",
        "label": "Common stock purchased and retired, shares"
       }
      }
     },
     "localname": "StockRepurchasedAndRetiredDuringPeriodShares",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": {
     "auth_ref": [
      "r20",
      "r21",
      "r235",
      "r236"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital).",
        "label": "Common stock purchased and retired"
       }
      }
     },
     "localname": "StockRepurchasedAndRetiredDuringPeriodValue",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r21",
      "r25",
      "r26",
      "r89",
      "r163",
      "r169",
      "r349",
      "r375"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 2.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Total stockholders' equity",
        "totalLabel": "Total stockholders' equity"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Stockholders' equity"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r0",
      "r1",
      "r60",
      "r89",
      "r95",
      "r96",
      "r97",
      "r101",
      "r109",
      "r169",
      "r170",
      "r236",
      "r287",
      "r288",
      "r289",
      "r316",
      "r317",
      "r332",
      "r333",
      "r342",
      "r346",
      "r349",
      "r355",
      "r356",
      "r361",
      "r425",
      "r426",
      "r460"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.",
        "label": "Equity Balance, value",
        "periodEndLabel": "Equity Balance, value",
        "periodStartLabel": "Equity Balance, value"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedStatementsOfStockholdersEquity"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SubsequentEventsTextBlock": {
     "auth_ref": [
      "r376",
      "r378"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business.",
        "label": "Note 18 - Subsequent Events"
       }
      }
     },
     "localname": "SubsequentEventsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote18SubsequentEvents"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SupplementalBalanceSheetDisclosuresTextBlock": {
     "auth_ref": [
      "r50"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for supplemental balance sheet disclosures, including descriptions and amounts for assets, liabilities, and equity.",
        "label": "Note 2 - Detail of Certain Balance Sheet Accounts"
       }
      }
     },
     "localname": "SupplementalBalanceSheetDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote2DetailOfCertainBalanceSheetAccounts"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_TableTextBlockSupplementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Tables/Schedules"
       }
      }
     },
     "localname": "TableTextBlockSupplementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense": {
     "auth_ref": [
      "r315"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow": {
       "order": 16.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income tax expense from transition tax on accumulated earnings of controlled foreign corporation deemed repatriated pursuant to Tax Cuts and Jobs Act.",
        "label": "Long-term repatriation tax payable"
       }
      }
     },
     "localname": "TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsIncomeTaxExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedCondensedStatementsOfCashFlow"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent": {
     "auth_ref": [
      "r331"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets": {
       "order": 3.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of tax liability from transition tax on accumulated earnings of controlled foreign corporation deemed repatriated pursuant to Tax Cuts and Jobs Act, classified as noncurrent.",
        "label": "Long term income tax payable (REPAT tax) (note 7)"
       }
      }
     },
     "localname": "TaxCutsAndJobsActOf2017TransitionTaxForAccumulatedForeignEarningsLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_StatementUtahMedicalProductsIncConsolidatedBalanceSheets"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Details"
       }
      }
     },
     "localname": "TextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "xbrltype": "stringItemType"
    },
    "us-gaap_UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense": {
     "auth_ref": [
      "r305"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for interest on an underpayment of income taxes and penalties related to a tax position claimed or expected to be claimed in the tax return.",
        "label": "Unrecognized Tax Benefits, Income Tax Penalties and Interest Expense"
       }
      }
     },
     "localname": "UnrecognizedTaxBenefitsIncomeTaxPenaltiesAndInterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesIncomeTaxesDetails"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_UseOfEstimates": {
     "auth_ref": [
      "r133",
      "r134",
      "r135",
      "r136",
      "r137",
      "r138",
      "r139"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Disclosure of accounting policy for the use of estimates in the preparation of financial statements in conformity with generally accepted accounting principles.",
        "label": "Use of Estimates in The Preparation of Financial Statements"
       }
      }
     },
     "localname": "UseOfEstimates",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesUseOfEstimatesInThePreparationOfFinancialStatementsPolicies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": {
     "auth_ref": [
      "r120"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails": {
       "order": 2.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.",
        "label": "Weighted Average Number Diluted Shares Outstanding Adjustment",
        "verboseLabel": "Dilutive effect of stock options"
       }
      }
     },
     "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": {
     "auth_ref": [
      "r116",
      "r120"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Diluted shares",
        "totalLabel": "Weighted Average Number of Shares Outstanding, Diluted"
       }
      }
     },
     "localname": "WeightedAverageNumberOfDilutedSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r115",
      "r120"
     ],
     "calculation": {
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails": {
       "order": 1.0,
       "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "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.",
        "label": "Weighted Average Number of Shares Outstanding, Basic",
        "verboseLabel": "Weighted average shares, basic"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2021-01-31",
     "presentation": [
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote16EarningsPerShareScheduleOfEarningsPerShareBasicAndDilutedDetails",
      "http://www.utahmed.com/20211231/role/idr_DisclosureNote1SummaryOfSignificantAccountingPoliciesEarningsPerShareScheduleOfWeightedAverageNumberOfSharesDetails"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 4
  }
 },
 "std_ref": {
  "r0": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r1": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r10": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6812-107765"
  },
  "r100": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r101": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(3)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r102": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(4)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r103": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r105": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794"
  },
  "r106": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794"
  },
  "r107": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794"
  },
  "r108": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794"
  },
  "r11": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6911-107765"
  },
  "r110": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794"
  },
  "r111": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794"
  },
  "r112": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.M.Q2)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693"
  },
  "r113": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=122038215&loc=SL108384541-122693"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "250",
   "URI": "http://asc.fasb.org/topic&trid=2122394"
  },
  "r115": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1448-109256"
  },
  "r116": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1505-109256"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1252-109256"
  },
  "r118": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "60B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=SL5780133-109256"
  },
  "r119": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125511455&loc=d3e1337-109256"
  },
  "r12": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6935-107765"
  },
  "r120": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r121": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r122": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257"
  },
  "r123": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257"
  },
  "r124": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537"
  },
  "r125": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e3842-109258"
  },
  "r126": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "52",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "260",
   "URI": "http://asc.fasb.org/extlink&oid=125512782&loc=d3e4984-109258"
  },
  "r127": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "http://asc.fasb.org/topic&trid=2144383"
  },
  "r128": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=124437754&loc=d3e543-108305"
  },
  "r129": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=124502072&loc=d3e1280-108306"
  },
  "r13": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e7018-107765"
  },
  "r130": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "270",
   "URI": "http://asc.fasb.org/extlink&oid=124502072&loc=SL124452896-108306"
  },
  "r131": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "270",
   "URI": "http://asc.fasb.org/topic&trid=2126967"
  },
  "r132": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "272",
   "URI": "http://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054"
  },
  "r133": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r134": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e5967-108592"
  },
  "r135": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6161-108592"
  },
  "r136": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6191-108592"
  },
  "r137": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6061-108592"
  },
  "r138": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6132-108592"
  },
  "r139": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "http://asc.fasb.org/extlink&oid=99393423&loc=d3e6143-108592"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=6361739&loc=d3e7789-107766"
  },
  "r140": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "http://asc.fasb.org/topic&trid=2134479"
  },
  "r141": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r142": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r143": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r144": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "22",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8736-108599"
  },
  "r145": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r146": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r147": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8906-108599"
  },
  "r149": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "31",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8924-108599"
  },
  "r15": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r150": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r151": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r152": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r153": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r154": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "32",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e8933-108599"
  },
  "r155": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "40",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9031-108599"
  },
  "r156": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r157": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9038-108599"
  },
  "r158": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "42",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "280",
   "URI": "http://asc.fasb.org/extlink&oid=123359005&loc=d3e9054-108599"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4428-111522"
  },
  "r16": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(13))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r160": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124259787&loc=d3e4531-111522"
  },
  "r161": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5033-111524"
  },
  "r162": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524"
  },
  "r163": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 4.E)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707"
  },
  "r164": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10133-111534"
  },
  "r165": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10149-111534"
  },
  "r166": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=84159169&loc=d3e10178-111534"
  },
  "r167": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(1)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513"
  },
  "r168": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(d)(2)",
   "Topic": "310",
   "URI": "http://asc.fasb.org/extlink&oid=124402435&loc=SL124402458-218513"
  },
  "r169": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "323",
   "URI": "http://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571"
  },
  "r17": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(14))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r170": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r171": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r172": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437"
  },
  "r173": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446"
  },
  "r174": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "326",
   "URI": "http://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447"
  },
  "r175": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4492-108314"
  },
  "r176": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=116847112&loc=d3e4556-108314"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.BB)",
   "Topic": "330",
   "URI": "http://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729"
  },
  "r178": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "http://asc.fasb.org/topic&trid=2126998"
  },
  "r179": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266"
  },
  "r18": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(20))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r180": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=99380562&loc=d3e13777-109266"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=120320667&loc=SL49117168-202975"
  },
  "r182": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(e)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r183": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(f)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r184": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267"
  },
  "r185": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267"
  },
  "r186": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267"
  },
  "r187": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274"
  },
  "r189": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r19": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(22))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r193": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r194": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(1)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r195": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r196": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(3)",
   "Topic": "350",
   "URI": "http://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275"
  },
  "r197": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "350",
   "URI": "http://asc.fasb.org/topic&trid=2144416"
  },
  "r198": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "05",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226317&loc=d3e202-110218"
  },
  "r199": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=123351718&loc=d3e2443-110228"
  },
  "r2": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "105",
   "URI": "http://asc.fasb.org/extlink&oid=124434974&loc=SL124442142-165695"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(28))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r200": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r201": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r202": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r203": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229"
  },
  "r204": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230"
  },
  "r205": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 5.CC)",
   "Topic": "360",
   "URI": "http://asc.fasb.org/extlink&oid=27011434&loc=d3e125687-122742"
  },
  "r206": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "360",
   "URI": "http://asc.fasb.org/topic&trid=2155823"
  },
  "r207": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r208": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "http://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308"
  },
  "r209": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "http://asc.fasb.org/topic&trid=2144648"
  },
  "r21": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(29))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349"
  },
  "r211": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349"
  },
  "r212": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "11",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=116646759&loc=d3e15243-108350"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Topic": "450",
   "URI": "http://asc.fasb.org/extlink&oid=27011672&loc=d3e149975-122751"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "http://asc.fasb.org/topic&trid=2127136"
  },
  "r215": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249"
  },
  "r216": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(5)",
   "Topic": "460",
   "URI": "http://asc.fasb.org/extlink&oid=123368208&loc=d3e12565-110249"
  },
  "r217": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r218": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(ii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r219": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r22": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r220": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iii))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r221": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r222": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-01(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442526-122756"
  },
  "r223": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(i))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r224": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r226": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(4)(iv))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.13-02(a)(5))",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=124359900&loc=SL124442552-122756"
  },
  "r228": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611"
  },
  "r229": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1D",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611"
  },
  "r23": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r230": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870"
  },
  "r231": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69B",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612"
  },
  "r232": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "69C",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "470",
   "URI": "http://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612"
  },
  "r233": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "470",
   "URI": "http://asc.fasb.org/topic&trid=2208564"
  },
  "r234": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=SL123496158-112644"
  },
  "r235": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=123467817&loc=d3e21463-112644"
  },
  "r236": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.3-04)",
   "Topic": "505",
   "URI": "http://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770"
  },
  "r237": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130543-203045"
  },
  "r238": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123351226&loc=SL49130545-203045"
  },
  "r239": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r24": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30)(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r240": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123410239&loc=SL49130690-203046-203046"
  },
  "r241": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r242": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r243": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(i)(2)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r244": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(j)",
   "Topic": "606",
   "URI": "http://asc.fasb.org/extlink&oid=123338486&loc=SL49131195-203048"
  },
  "r245": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(i)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r246": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iii)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r247": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(d)(iv)(03)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r248": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(l)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r249": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(o)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r25": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(30))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r250": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(p)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r251": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(q)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r252": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(1)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r253": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(r)(2)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920"
  },
  "r254": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921"
  },
  "r255": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "20",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=21916913&loc=d3e273930-122802"
  },
  "r256": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "60",
   "Subparagraph": "(c)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=6414203&loc=d3e39689-114964"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "70",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942"
  },
  "r258": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(d)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r259": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "80",
   "Subparagraph": "(f)(3)",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947"
  },
  "r26": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(31))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r260": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "80",
   "Topic": "715",
   "URI": "http://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948"
  },
  "r261": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "715",
   "URI": "http://asc.fasb.org/topic&trid=2235017"
  },
  "r262": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r263": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5047-113901"
  },
  "r264": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b),(f)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r266": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r267": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(i)-(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r268": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r269": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(32))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r270": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r271": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)(iv)(4)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r272": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r273": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r274": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r275": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r276": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r277": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r278": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r279": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(ii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r280": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iii)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r281": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)(iv)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r282": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(g)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r283": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r284": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(i)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=d3e5070-113901"
  },
  "r286": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=120381028&loc=SL79508275-113901"
  },
  "r287": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r288": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r289": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(f)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r29": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(1))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r290": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(1)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r291": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(g)(2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121322162&loc=SL121327923-165333"
  },
  "r292": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.D.2)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809"
  },
  "r293": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 14.F)",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122041274&loc=d3e301413-122809"
  },
  "r294": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=122142933&loc=d3e11374-113907"
  },
  "r295": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "740",
   "Topic": "718",
   "URI": "http://asc.fasb.org/extlink&oid=121829988&loc=d3e23524-113945"
  },
  "r296": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "http://asc.fasb.org/topic&trid=2228938"
  },
  "r297": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "730",
   "URI": "http://asc.fasb.org/extlink&oid=6420194&loc=d3e21568-108373"
  },
  "r298": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32247-109318"
  },
  "r299": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e32280-109318"
  },
  "r3": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "205",
   "URI": "http://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760"
  },
  "r30": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r300": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318"
  },
  "r301": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32718-109319"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32840-109319"
  },
  "r308": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32537-109319"
  },
  "r309": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32847-109319"
  },
  "r31": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r310": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319"
  },
  "r311": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32621-109319"
  },
  "r312": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32632-109319"
  },
  "r313": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r314": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r315": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "9",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319"
  },
  "r316": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r317": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r318": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r319": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r32": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(c))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r320": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123459177&loc=SL121830611-158277"
  },
  "r321": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.5.Q1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r322": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB TOPIC 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r323": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.7)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r324": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.1)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r325": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.2)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r326": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 6.I.Fact.3)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817"
  },
  "r327": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.C)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817"
  },
  "r328": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324"
  },
  "r329": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "270",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338"
  },
  "r33": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.1)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r330": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "740",
   "URI": "http://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331"
  },
  "r331": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "740",
   "URI": "http://asc.fasb.org/topic&trid=2144680"
  },
  "r332": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4568447-111683"
  },
  "r333": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4568740-111683"
  },
  "r334": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "19",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123454820&loc=SL4569616-111683"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r336": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=d3e5614-111684"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)(1)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)(1)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684"
  },
  "r34": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bb)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4I",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4590271-111686"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4J",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4K",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "http://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(1)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(3)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r347": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)(4)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r348": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)",
   "Topic": "815",
   "URI": "http://asc.fasb.org/extlink&oid=123482062&loc=SL123482106-238011"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612"
  },
  "r35": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.13)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r350": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497"
  },
  "r351": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(2)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497"
  },
  "r352": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(3)",
   "Topic": "825",
   "URI": "http://asc.fasb.org/extlink&oid=123597120&loc=SL121967933-165497"
  },
  "r353": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=125521441&loc=d3e30755-110894"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "230",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906"
  },
  "r355": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "17",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(a)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r357": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(b)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r358": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(c)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r359": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "20",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Subparagraph": "(d)",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900"
  },
  "r36": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.14)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r360": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "21",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=118261656&loc=d3e32262-110900"
  },
  "r361": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Topic": "830",
   "URI": "http://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "830",
   "URI": "http://asc.fasb.org/topic&trid=2175825"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r364": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977"
  },
  "r365": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123391704&loc=SL77918631-209977"
  },
  "r366": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r367": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(3)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(4)",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918686-209980"
  },
  "r369": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123408670&loc=SL77918701-209980"
  },
  "r37": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r370": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "53",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971"
  },
  "r371": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "http://asc.fasb.org/subtopic&trid=77888251"
  },
  "r372": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(e)(1)",
   "Topic": "848",
   "URI": "http://asc.fasb.org/extlink&oid=122150657&loc=SL122150809-237846"
  },
  "r373": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r374": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765"
  },
  "r375": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "852",
   "URI": "http://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766"
  },
  "r376": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314017-165662"
  },
  "r377": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "855",
   "URI": "http://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662"
  },
  "r378": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "855",
   "URI": "http://asc.fasb.org/topic&trid=2122774"
  },
  "r379": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r38": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r380": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r381": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(1)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(2)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r384": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(b)(3)",
   "Topic": "860",
   "URI": "http://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719"
  },
  "r385": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "910",
   "URI": "http://asc.fasb.org/extlink&oid=123353855&loc=SL119991595-234733"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "330",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=6471895&loc=d3e55923-109411"
  },
  "r387": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "730",
   "Topic": "912",
   "URI": "http://asc.fasb.org/extlink&oid=6472174&loc=d3e58812-109433"
  },
  "r388": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SAB Topic 11.L)",
   "Topic": "924",
   "URI": "http://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856"
  },
  "r389": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959"
  },
  "r39": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.20)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r390": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(1)",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079"
  },
  "r391": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(2)",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "20",
   "Subparagraph": "(f)(3)",
   "Topic": "926",
   "URI": "http://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079"
  },
  "r393": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "340",
   "Topic": "928",
   "URI": "http://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004"
  },
  "r394": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "25",
   "SubTopic": "20",
   "Topic": "940",
   "URI": "http://asc.fasb.org/extlink&oid=123384075&loc=d3e41242-110953"
  },
  "r395": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(10)(1))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r396": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(11))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r397": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(15)(1))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r398": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(16))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r399": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03(23))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r4": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.21)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r400": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.15(5))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r401": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.9-03.17)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120398452&loc=d3e534808-122878"
  },
  "r402": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(15))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r403": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(26))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r404": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04(27))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r405": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.9-04.4)",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260"
  },
  "r406": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "235",
   "Subparagraph": "(SX 210.9-05(b)(2))",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884"
  },
  "r407": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "942",
   "URI": "http://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630"
  },
  "r408": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(12))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r409": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(15)(b)(1))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r410": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(16))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r411": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r412": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(25))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r413": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03(a)(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r414": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "210",
   "Subparagraph": "(SX 210.7-03.(a),19)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400017&loc=d3e572229-122910"
  },
  "r415": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(22))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r416": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(23))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r417": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(8))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r418": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "220",
   "Subparagraph": "(SX 210.7-04(9))",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263"
  },
  "r419": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4H",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438"
  },
  "r42": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.29-31)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "40",
   "Subparagraph": "(d)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439"
  },
  "r421": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(a)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117783719-158441"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "29F",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124504033&loc=SL117819544-158441"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(e)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(1)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(f)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(i)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r428": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(ii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r429": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iii)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r43": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.3,4)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r430": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(g)(2)(iv)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r431": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "40",
   "Subparagraph": "(h)(2)",
   "Topic": "944",
   "URI": "http://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641"
  },
  "r432": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "http://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014"
  },
  "r433": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "http://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629"
  },
  "r434": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Subparagraph": "(d)",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99779-112916"
  },
  "r435": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=d3e99893-112916"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "7",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "360",
   "Topic": "958",
   "URI": "http://asc.fasb.org/extlink&oid=120429125&loc=SL120174063-112916"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r438": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r439": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a)(3))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r440": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r441": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r442": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r443": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r444": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r445": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "http://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024"
  },
  "r446": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(c)",
   "Topic": "976",
   "URI": "http://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663"
  },
  "r447": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "310",
   "Subparagraph": "(b)",
   "Topic": "978",
   "URI": "http://asc.fasb.org/extlink&oid=123360121&loc=d3e27327-108691"
  },
  "r448": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "985",
   "URI": "http://asc.fasb.org/extlink&oid=6501960&loc=d3e128462-111756"
  },
  "r449": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b"
  },
  "r45": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a)(4))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r450": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2"
  },
  "r451": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-23"
  },
  "r452": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1"
  },
  "r453": {
   "Name": "Form 10-K",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "310"
  },
  "r454": {
   "Name": "Form 20-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "220",
   "Subsection": "f"
  },
  "r455": {
   "Name": "Form 40-F",
   "Number": "249",
   "Publisher": "SEC",
   "Section": "240",
   "Subsection": "f"
  },
  "r456": {
   "Name": "Forms 10-K, 10-Q, 20-F",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "13",
   "Subsection": "a-1"
  },
  "r457": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r458": {
   "Name": "Securities Act",
   "Number": "230",
   "Publisher": "SEC",
   "Section": "405"
  },
  "r459": {
   "Name": "Securities Act",
   "Number": "7A",
   "Publisher": "SEC",
   "Section": "B",
   "Subsection": "2"
  },
  "r46": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(a))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r460": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(a)(3)(iii)(03)",
   "Topic": "848"
  },
  "r461": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "848"
  },
  "r47": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.6(b))",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r48": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.8)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.9)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682"
  },
  "r5": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "210",
   "URI": "http://asc.fasb.org/topic&trid=2122208"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "10A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669646-108580"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "12",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e640-108580"
  },
  "r53": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1A",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669619-108580"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580"
  },
  "r56": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=SL7669625-108580"
  },
  "r57": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124509347&loc=d3e557-108580"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL116659661-227067"
  },
  "r59": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067"
  },
  "r6": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r60": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067"
  },
  "r61": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067"
  },
  "r62": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(10))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(24))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(25))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r65": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03(5))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r66": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.1,2)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r67": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.2(a),(d))",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r68": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.4)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r69": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r7": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765"
  },
  "r70": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "http://asc.fasb.org/extlink&oid=123367319&loc=SL114868664-224227"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3213-108585"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3255-108585"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3291-108585"
  },
  "r74": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3000-108585"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3521-108585"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "25",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3536-108585"
  },
  "r78": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r79": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r8": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6801-107765"
  },
  "r80": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "28",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3602-108585"
  },
  "r81": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123570139&loc=d3e3044-108585"
  },
  "r82": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4273-108586"
  },
  "r83": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "230",
   "URI": "http://asc.fasb.org/extlink&oid=123431023&loc=d3e4297-108586"
  },
  "r84": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18726-107790"
  },
  "r85": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r86": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r87": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r88": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(f)",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=123372394&loc=d3e18823-107790"
  },
  "r89": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(g)(1)(ii))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r9": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(e)",
   "Topic": "210",
   "URI": "http://asc.fasb.org/extlink&oid=124098289&loc=d3e6812-107765"
  },
  "r90": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r91": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(1))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r92": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h)(2))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.4-08(h))",
   "Topic": "235",
   "URI": "http://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690"
  },
  "r94": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "235",
   "URI": "http://asc.fasb.org/topic&trid=2122369"
  },
  "r95": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "23",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793"
  },
  "r96": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "24",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793"
  },
  "r97": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793"
  },
  "r98": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  },
  "r99": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)(1)",
   "Topic": "250",
   "URI": "http://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794"
  }
 },
 "version": "2.1"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>123
<FILENAME>0001811884-22-000004-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001811884-22-000004-xbrl.zip
M4$L#!!0    ( +E^>50Q*7+#"+@! #!\$  1    =71M9"TR,#(Q,3(S,2YH
M=&WLO7ESVTBV)_K_? J\Z-O74CQ2)K78EEWM"5JB79JREM92U=4O7MQ( DD2
M91!@89',_O1SMEP 4I9D6Q+EXDS<+DL"$KF</.OOG//3__X\28)+G1=QEO[C
M67>C\RS0:9A%<3KZQ[.J:*LBC.-G05&J-%))ENI_/$NS9__[[?_Z:5S"F_!V
M6OSCV;@LIZ^?/[^ZNMJXVMK(\M'S[N[N[O//^,PS?NCUYT&>Q+5'\3?T\&:G
ML_4\3O$CH3;/P\='2DWM&T-5#.AI^0.\M=EM=[KMK:YYI<C+^<?AEPL>C<J\
M7<ZFNE@\(_CS<_PSOMG!-S?MFV%6I64^L^_1.X4.-T;9Y7/Y(WW0?DK'BQ^&
M/]"#?VZ;1X=Q4IM/5:KQ1$<;83:A)[N;;@5WV4O\:]28A3S\XCG_T0Y;9-N;
MW9=?&IR?L"]\ON[9+DXDB5/]KW>G']WCY>+GW://RUREQ3#+)ZH$LL21=MJ=
MS?;F"V^0-NQB;2"SJS>-\\JC@JK,KUWH[G/XJWD0AOSTA2W!/P]4X?9[[OG:
MM<"_VD>+>-&#,&SW^;\./YZ%8SU1;7N@>/&TBN __T^['9SD652%.@H&LZ"_
M_Z%W6E1QJ8,B&Y97*M>MH!==XFM1L)=-IE6I\^ @3;-+VH^B!3^$&RWXVW26
MQZ-Q&:SMK0?PY5=M(+;-X/\[.?G7+[M'^Q^W_L^_?_OUPZO=_?<___;_;P0X
M31V-5$Y?0^(,VFV841F7B7Y[<=[[.3CL[Q_L]3X&)Z?'^Q=[YV?!P=%>T [>
MPUD$W4[[E^"LOQ< M0.;^>DYO_>_?IKH4@5AEI8Z!1HI]>?R.3*0-T$XAF_I
M\A\7Y^_;KYX%N%MM_6<57_[CV1X_WCZ'R_HL> ZC/)?]&631#/X3Q9? O68)
M,*XH+J:)FKU.@8WA1L:?7^.S.I=_QU&D4_XW/')4370>AT&J)OBNCE_W4YCI
M; \^EZOD((WTYU_T[!G/^'-YJH?_>/8[7OLX^L>SH0K+[K.W'?A_+SLO7NR^
M^NEY;=@O?*8WT6D$_U>^3]3H"\-O/GL[5$FA;S_R?A96-'!<A"KY7:O\/?RF
M^,(WMIZ]1;[SM9\X@;]FT4T?V7[V]OWOM_N$\/[7QU.= Q&GHX\:KMTI$N_Q
M\*+0O0+HY*Q4I<9)' _?QRG0?PPSR8H8B;[_&<BEB >)_A@797U2?7]2.\_>
MWBQX_@87$&92SDX2E9:]-.H#54[QTT>Z7(H5==R*7CSJBC[&:@#W'>Y/E><P
MW'<YI)>W6E(O#/-*1V8&L2YD#O/K>=[@ [D>:G@RU 7\C&S[=4$,&:82$!M_
MK?(PSY"[W$8XT!OC'-=1E9.H;63ZQN<B,G]&M>,?SXIX,DWTL^<RI]H\Z.<B
MJW+Y\;7L#VT+WBSZI29N1?^,(_QA& /[I^GKA8)S[^"7!L/R7J1Y^&-.Z6K3
M/T$TY>4^'.=;L^D=Y!C>[WD^D7NFNPD'PR-&\L1S;\SG=DUSZ^L__/I8^):-
MF9O?WF7F_]Q\U+EW7K2W.E\U]X/-S<[6YO8CSGZSW=EJ;VY_U>SW17-^W'MA
M*>>>[D7G$4^G\PWWXO>'GWGM9#JWX%B=;SB9W[N[C[F^[N[-ZX-GOH'R'GY]
MCO+\F=^=(W=?/>+,7WW3G>G^SUG9_Q/-NJ(-_SO)TK,R"S_=TWJ =/0(M;6W
M/[&[X+7^/$WB,"X/]60 8T?Q!%4V="(9_<]J>*A"@MX'4P7#*RV+WN>X>/;6
M/.9-GL?ZZ?G"3[PE I99+(LV4C^'7A2=J#@Z2/?4].D=!,R>M&_0P\TBXE(E
M3_U0\'_S@S3,)OKIG0E-7H_Q[4O-BWCJYW&J2Q6G.NJK/ 7CL'AZA])<P=,[
M$1!\*_%QKP*ZOL,KP?"@V[UB^0^UTRMF?J]:?G=WQ::7P,*MG\.*F2_AH:Q8
M_G*=QTHP//Z)]%?BX]X=B"O!\&C;O6+Y#[73*V9^GWO]^V9GQ:9OX12[]SA=
M[1Q6S'P)#V7%\I?K/%:"X?%/I+\2'_<,4.FO!,/C;?>*Y3_43J^8^?WN]0JQ
M<^_XVA6;?JSM7K'IA]KI%9N^S[U&K-*I2D>Z?1BG\:2:_,_)5+^;87I9^UT5
M)Y@8VTLC\\\#()SLDM:\# =1Y.5KFCUO./XHR[AACV]]Q->F!_$>U0_ZA@U[
M>K@ICSK4YQ^".G@9*^KXSM0QQSOL3BPI'3PBE[!_?-(G/L</EOW$'_'F_Q@G
MSE=F24_W5O=YN?>7"71)]_=6MV<9][>[^\_N_^S'19G'@PI-3$HU+WHAW$G.
MO@9;#N]R4>6C.,1"!^$2G,$P3EY_<=9\-OC8W/0?"[G3V?J&).?5&3VF#?C/
MQTX6O@T7^'KZ^OTQ4M&;*]R^Q0I-POI7K7#KL5?X\A8KW/V6%3YX0GXSI;US
MO[I YY'OX>UBM]]R#SN/? \[M[B'G6^ZAYU'OH>=6]S#SC?=P\XCW\/.+>[A
M-Q8P>-Q[>._Z%J[P4>\ASOZF>XC/?/T]A!4^ZCW$V=]T#_&9K[^'L,)'O8<(
M KWI'GX;GI_B0!]TUK[8.-OHI=&>2E6DED#S1Y/8!G]@@J-<3<>HV3N-OS;E
M9=+VW:[VTU&BT@AFV:L*K/$7/Y&]73#QY=SA@_[R;ZB4<'U]T%^6W>NL;OT]
M09]6M_XA=OBO>NN_K2@:\LRS4*<*'FZ3^_F^=/"OWD8S/4>3/,^GYQ;O_^6W
M^SOB9YH;>5^6U??>R,T?@V[_6MO]'>F6JZF7Q_F9SB_C4+>/!T6IRSP."Y%D
M'Y)LH)(EV=_F=-WVNGE_:WC_%FH([\G3NSJ8R;0Z\64Z\0<HQ+HZ\64Z\?NO
M2;*(JW^8I3K,DFPTZR<Z+/,,P] ZGUWD],NG108W+.;ITL;C\/\5;3P)VG@4
M2;&BC:= &X\C4XYTEJI2)4^+",RLG^YI/XZ46)WV7XGOKT[[K\3)WR59%IWD
MN@"!J ^S-"ZS/$Y'&&@)0_@M_*2?F*EXJR4]73IY'!FPHI,G1R>/(CU6=/+4
MZ.1!Y,X2'O@/S+U7N_V0/'"UVX^JP<Y%-(ZK9:D^L"3A#-B0I\G'5F>]'&>]
M')'*U5D_P%DO<XSR*1# XP<:?AQNOZ**):>*)8Y+KJCBKR5!&E&+IW#\#QBR
M^'%DPNJ<_QI<?G7.?PV^?9=XP5,@@F4)%OPX'']%(4^(0I8^YKBBD+^ E%FV
MH_Y1>?5JGQ\RPOB7WN<'X1NK&I3+QW,J$']T0"<@#'G')UJA9'R+$X<7X9_X
MDODMC8!OU5^_.-NOOQT7V?9F]^5K^,,M7C\;*Q#(B[Y?T%]N,X,B.M$Y#<3C
M1/$E'+Q]Z*B:Z%R!K+_3-.MOX6_V=9I-XG1NI!NG6W_QN3=!MY[G\>?7\'Y6
MY:")R,]CK2*N&P4OP'_P?W^:!D4Y2^ &#.$P7W<[TS+8K\IP_*K3/?MM[\U$
M 1VFKSO/WOY43%7J/]P>JDF<S%Z? YD7P9&^"DZSB4K?H*LT?_TWO#GOW[\9
M9#E\M#W(RC*;O.Y./P=%EL11('^'<54PSO7P'\_^IKK/S/A(5NU(AQEL&=R.
MUVF6PF&<JT&B@VP8["'AI25LCX(+@!.#_TQA2>/<C,#??=UY,]9XU^ ?5W%4
MCN&_LJ3N-BRU@___V?.%V]!<E]F*-S0YE<2C]'4(L]#YL[?__;?NB\X;GL-=
MAN)_M'.:8GMS6BX:_*?!VXNC@_/^?G!VWCOOGP4_/1^\O;]OG?7W+DX/S@_@
M0[VC_:#_K[V?>T<?^L'>\>'AP=G9P?'1UWU_\==^4\48E.8R2UO!_L;>1L!;
MN=G9V=[];M_YVN-9/.7WQZ>'? 9PJ8 RZ6K'89 JE"21CE_O9V&%'!EKS#\+
MA$V>(I&#^'H6Z")44Z3RO *J[G;:O]#]=$-]_U67='5J=Z,-%S51TT*_-O^0
M*]+M=/X."RU!N)11<$F#PF2SJ;V>M>?N,,LO<)'#L^!#5H*&\NSF;>VE::62
M4SW-\G+!]@ZS?*+*?SR+84= F+\>9%DR4$F2E8/L,V[+[LOM%V_FMYSXB-#?
M_/_"P?>.CBYZ'X/3_LGQZ7EP<G%Z=M$[.@_.CP.X,^=P,8+N5G!\&G1WUJ+U
MX/A]</YS/_"ND[U*O;US_'-W=VO;T?CS,H)_E<B@[V'K%Q'(^RP/RK$.AC$0
M9!+,M,H#$/8Z"FX\@A-2 _JL&7SY#%Y'J(7" ^-(S? ;.GWV]OHO[%4Y/%&^
MISG]#H_?_2/X@7T=LA9&.DSMI%L!ZC>+K]S#'\+QZ4-\^3O=O/-<I:RP?M/M
MV_Z:VW=^VCLZ.Z!K]L/=P-+N:\ *=C#,L\FUN_'M_UMFC[5D;-,8%V@6!>]C
MD$E'V490H\TO:HR=#HG@:PFU3]8/#@Q_@^M_H_3M=-#2V7FY,T^1@[INZ6W5
M<Q*G=Y/07ZV%/*$7%RI,W_EL3_4(#6F5ED?PEQO/]^*\]W-PV-\_V /)?7)Z
MO'^Q=WX6'!SMW7C>W[CNM?YG%98T?319W+0#503%5(?H1XB". WBL@A",/?@
MM?5O/*O[4/-VOL>M_]Y4@.TP\ZF8A^3GVN-2B7M9=(.J0%*IP%>PJQL.C/K"
M1:G&MV,!#[!97U[[N?I\((ZHD-9_2U;WZF6[L[6]^1)%WK?J/M]EG6MT< '(
M0- _0%7[H\KC(HI#DH-P9V+_D.FQ?*32^#_T\_J#'LG:P<;IQME&T)],DVRF
M<[YT]6- 4;:^3+)B.8R^:ZSH&XB\%T4869/_?(Q3W;V1P%]VMK>"LZPJQ\%6
MIQ/\IHMR\95^',WG>_- V9L]^.=Q?IY=I3=NT&$<P2+UHDUI!;?^(-W:X_P$
MN"?<T._*;0.K[=]N*B<9#)W\.YY>P_8;#'"[L_WR+GK> Q'&FJP&>=XTASV-
MIV".Z\\ZK,KX$M4'8#&Z6 _68*4!+O7[L)GOZ"I[,HSG3G=P[4N$B/>NEVMU
M.]+K+' X#-ZN!X;TKOO*QRQ4R<DX2V]KT.R\> $&3:>S+/Z--:?Y_O??7FUV
M7[XI@E(G>HIK"E):5 M%?5)AK]U P9;"&K\7C2\Q16]M;6QMW]F/<P9<(8_+
M&/Z<T\[J',R(:947%1H791; $Z2.=#?7!NO(4]##T O+U[?5F+YF8C?QDMM]
M=?,^OGI+<O^ZX[C[&E<[^[7?/X]+CO]I%8Z#,%%%\> T?9XK8E-GL\D@2^[T
M^>]Q!$?B3J =T)_#,9:L#N"R7XUC^(WC"*\?[YB^)#2%>\VZFP,ZS1O%&;H+
M,Y386?BI%?Q79Z/3#:8JQV54"Q79AR:(+ZU6B(5IY1:NJL/];UW1]Z"QVYQ?
M7TCO5CZXH][9?N^?W\<4>SP.NN+;]Z"@C&H*"MJ@1Z 6/L8]7JJC>6!-]Z=/
M@\@\+S"11 _AM5?3$O[Z'/[\]B"-T,^E@\$L",<Z_!3 DY^"F$\O=^[MN A4
M<*63I/TIS:Z =6M5P)E&\(>B0EU?%4&DAW'*WN_3"F3Z=F?'T(%'/D 2&[48
MV.^ZD#7>(IAI(XWSD<4;G N_P>1_P;F?R=0/:.8W\[FLR>/N.-L79K8/'_'Y
MWB209B7\YL\JQLL/=WZ(L;Z<@L;%8F:PA1Y>#MPZEO HY_]KEE1IJ7**(^;%
MZMP7G_O56)/;OG'X:]WU8 QW'$\\"E22V&/WZ6&@Y0$8\PLDX'$#HW(@6>"?
M,78?1!6F7-"CTUR'FG3S[F9 4) B6(/QAO!_107*<3'.,,9F(NSE6)7-N5^I
M8IYJZ659PSJPKS0*UC9YC0.MX8"KP1^P GR>'H67<!8R#L(F"IH$35(59;#;
M"2(U*S;N0I,"BV'8!>J4I2JKFTGS=\*0?A?:K,WV*/O:B_@CD#@>/9SZ)"Y+
MH!/-50%2Q&LGLT!?ZGP6'*!\5R'Y;_=5J1CLT+@!;@R?(_H2\52/JH2C2V?M
M\V --^'EF\VMS0TK,F.*'D\Q>GS?UX'G:ZE<%^MWHF%O3W!+A*17-'PGS?&/
MJBCCX>P^R)HTMP2&TH$*0R#K7"%MXDFCVI8N_"U(^K2]\ _%!.X#?"4W/ L.
M>@+;-VLAFX?A@#?BM$?!*,^NRK'Y\P9P?4US(S618%$4&T'_\6;GS74SI#]W
MWYC';GS@^OF9!Y'5R\/7S-4\:139[N:@O6F$ER^Q&A?ENU# TB$_GKW]N/AL
MOO:BW5N,_]G;WCW,\;[ $S="0DA1W8.UC+)\=HN +"<)T;)#>0O#LD>+KG*3
M]P9W9[OW>(QGUUWB6TWSAFVEP=]5!=BJQ2)=ZYN0Y@]"-W?S:GS%!_J+^>+W
MV'TS] <:>8\'_MZ(XR?A>AE^05IB[/269CFJK:2LPM5&^QPTNJI@20L;RLC_
M!4AD$-;XK62&'[^*X=-XP"DL)L-[=QD7Q"I2E8:Q2I#Y(Q0/'\9NEY'*([#X
M$2P27><'W%I3ZU\2FM]J[C]Y8T-L:>%R&.]!U42!Z8#0&MQ#V$[$D<)DU(AL
M3AML5T4!W M_9;98#X>:M/!40"?X9HS*>0KGA_<KSY(@ SO&.U;'8"L@E-P>
MWG9GVPLSGZE\H&#8]O'G1,_(5%_K[@38<'UO(WBY^0)CTNNX<+=*\0\/$N !
M'O$,XWS"5@F8,E.%#P&]D1,QHAFK*HI+F==& %;"':CE6M9S$ [S'@Z<Y3VW
MO>\3-7J 7(>C["N$ZX] XV1Y%&.=)%: K"UP$U^K75L[]$X>PIND/\[GGL3.
MMQFB2W[V#.O%,U*C$9PR_H2GKTL.VYH3O,SHHB,K0R-2?@PYXHMNAW(6P!F0
MCY"LS"&ZUF"T@JBD*ME]F.LAL) TU,@$V?41PP_ .#@HCK^J#XI^C00]<466
M1&2-TF2!X0'S# 9QQ.RU^(2,B0:#&9/7HS8.A3)D+33<0%1%=.^9/^3S\*=)
M5B#?PAA0,F/9JG$M0$59&IETO#\K2@DPE-VC3_V?*M7!5H=3V%IWWN.[;/'<
M_&G;?AJ\_2^Y-^_)EP/C-"_."?'R]TFF&LZ=_F;WGYO/ LQ1IY\QV1\N>1B#
MGEW\X]G!T7M02&'M,%JGGMZ75I,H*^719V\W7[UH=;=V6B\=SLW,AN+*&\MY
M,2Q3Q(UEZ!M1%N7Z!UE5DL*$)V0@'M<3$<%?^)C"&D;"ITD48$#!N#,A.0@P
M37+#H6R9J Y5#I_:W":JVFS9\>:G!;\(;CI]1FR<X62X&L.Q&Z!.#@>;FYVM
MS6V/(*1\PU?1Q%;KQ<YV:_?5RSF*V$"2^(XI34N+*/QNX/S]X[V+P_X19TH=
MGYX<G_:P_L"[WX/3_OO^:?]HK_^H2/I;Y-X7+D5(1^]FIT9(G,-P[Q(@SAO]
MSN=PA?:<FX]NG?%(7J*4R3[/@L+4V+$A'LY.#PZU+N4FTUT8@ZC1>8&J3NS-
MK"[ 0 G/@A/@^\'!P4$K.("A@RYP^R[P^B[<S.X6<?+NMG7]OX<+$6 )@8U;
MX6NL=?O5E3+<BU,0ENU!KM4G$!MP+J]5<J5FQ9OF@-V-G6GY9J#"3V"Y@O'0
ME@HANQW\_^8KK_ CM5(<"<C2MIV4QVFONWBKPB5?ODFRP%<FPX2^K*CH#2SA
M+4WJ0?'U!T?[_7]A]C:5U.!"&%^7@;G,3'EWHWM7J-!='7<O7FUT7]SS-[J;
M&R^_"[SP3B1RTOO0_PJ'Z3RWV=OK]^%:?\N9U&;^]=QB^P9N<=([/0\.YEC$
MET[HAN7>+WG<M-??B6Z^%L6XNG_?NH_W<)EN9 Q??[UV;KA>K%0]_O5ZH.6:
M\-7W7/#W(L7NP]SF;X?[KN[W\MSO%[>ZW[T?YH+?M-[3N/@4O%=AF>7+><EW
M5K=\=<OO2O4O;W7+W_TPM_RF]5ZD6,XUN=11<%:J(;H2)I.%KH1EN/(O5U?^
M :^\&=;XV\CA]NP'802O;L,(-A^;#]2KZVYO;FS1"3S,%ISD6#(<DR16S. O
MSPQ^D&N_>YMKO_78U_[!EOM1CU02P$4/-25UK&[ZZJ;_(#>]V[G-5=]^[*M^
MKQ+^QCTXU87.0?G_*U_[U25_*A&N[DT!<0YQK6)<JQC7#WR=[E-F;MY&9NX\
M]OVZ7YEYTQX<,AP6<5D+:A!*8:F^('E/=4)P+ ^K%1QB@D5>$.2*2X $)U4>
MCI7@+OE=KT;!4DKG5RNE?,5@[GRYMF[#8%X\-H-YN/6>F<2Y]S8C"FL8+.6-
MWUW=^-6-O_,-N F61C?^Y6/?^/M5*6[:@\/Y],K]N @K[F>#>D(O5<FLB$D_
M<*QB+TLC3JK%9\"8KY*2'CF>:O[ 4NH.FYT5)UEQDCO?HELA\%[^. B=&Q?\
M3\QXCS&5^%(3!X!?).9G9"!)ABU>BZ WR*HR$,,%@3W+R!6V'@C0L^(!3Y@'
MW JE]^K'80$WK=?I K8K.SL6SJKI-*&?53Y;6IMB=>=7=_[&.W KS-[N8]_Y
M^[4@;MJ#/:I9@3F@=/M!^*M1KH4?_(;%=7I< D7A+\!@Z+F**%R.#HG(<T)8
M[6$9V<;.]HIMK-C&#5?F5@B_W1_(7+AIP7M<@8GU \+\1&@=K"[XZH(_R0M^
M*RS?[H^#Y;]QP<=4 ^L@Y6HF\/O5U5Y=[7N[VM^-KC=O0JD)K&>%ZUGA>G[@
M^W2/HG+S)N"<5 1Z_ OV4 O>CW--J:VMH&\;XAY30UQ!YNR96DK!!RQ9BH;Q
M<MK"*Q?:ZO[?=!UNA>OK_CC5*VY<L+OT6(I-I\7RZLNK^[VZWS>1^ZU@==T?
M.YWUQDTP34:#XZL4I/PXGE+M/)V7*DZ#=SK5(/[1^<U_)RW (7,$8G,MG'?%
M.U:\XTGRCEL!]+H_3D[LC0LV'($N.V+H@%,4M>M_CMTLN IPT9* &]L3P4$:
MZ2GVO%B9"RN6\%19PNUJW3UZ[NS#+?@DC],PGH)NX,7-WVLM6!N=7\;ADD;2
M5O?]Q[COWX_8;\*4L;O]U\>_W2MO^^HZ/47Q>;LB<X^>1OMP"^Y_'L>#N 1=
M>0%>-3@+QSJJDB65GR^^[X5?U$S@1EK$U[]_>X'-6R&DV"E\A[?NEKUY,_D^
M6ON%&U=JFV0$9]4$IC;[BI4_#IW>BW[RG<3U2E=X+#Z^=1,0X^S@PU'O_.*T
M?_:=[_BRJ2@[\[6'5BUN?K 6-]*A9ANWY:$[U/PTL.TX!O7E?/7ED.7LW'TY
M-)V#\_YAT*6V]-VN-)!\=W%V<-0_.W,MG[YZ=G>;SC4][UYN;+JF=WM5CLVM
M9H&:H$.F",HQW)'1&#,=J865-+7%WG)Q"K_*JD*E41'HSZ&&ST_A@*@5G1T
M73E78PV_2;-21TO4[*^V\(M2C8-#C2W_J'1C5(6H61^DX4:PAN>WV7ES<7ZX
M3__LOL$VE/+;LMYY#/ZXSGW#J,&8[3()MVU*PZ*3:PQ7"7M&)A@X"[.B;+L^
MO\%$9A%I\G]Q6UW<TFFNHVR"NCZVHHSB(74B*V/3FJQ00PWCX8['$VSBC!TQ
MX=Y3-V'@11GLD.DG>+[P7%O7+XH;GQ7!'UE,GR^SX$M[1CTYD\0T+"ZJ01%'
ML<IC-P7_?\^J,*1>G.3FIUR:[CJVW<Q&:?P?DT^3ZV*:<7-#^'RJ=<0M%8$S
M8XPQ96J3)<-,-F$(-8TCW"U= &.A'F]YH,(_JSC''["))VPI+@"8246Q!][P
M$08K8,<GE-^+S^9Z5"6JS'(\LC3DFZ);P19.-(F!I\Z\(ZZ=WD1KW.>LT#)9
M^!Y-G^,<L-MIL+T>%#I):'%\.%_;!=$G\BU37]J[!-.,FX:_5@-:M'[S)9G%
MX[0WMSFNK-;EPL!E> ;;?Y4")6*8)L .OZE."FZ,Q_M6R-WWZ"G0Z1_9K* N
MZ06*_[@ 2Q4)L)+VV+@EV$A;!2&6:L+-FBB^0H5*Q#U<5%/B1%AIO<IAI[$U
M[%+NV$!V+/<B7]R:/2-HN;GOW$PY-C0S5I=:^HG*"I'H+9L@#E"4>3R Z=1V
MQ-OK9X509%DL+>-E.BJ$ ="EP_;S?./H6FGO;A(3"X9Y-B&^0EP.*&80$RO%
MQNJ@.8P(8:B\KJTZA:]KG1M.4NIPS-<0-C&,IZC;T<>I<E">P=^ H(IL6%X!
MYVW!&2%UTPO8R76"=YUY3?A)P="C%KP,IT'=+.F46\$4VPS#.#A)7)OY]@0F
ME\<J:3#"<S[J*B%FT^#NAIO +8%GD*$3.QO"C+ C=QKFG)6<&,[/.8JXFR(
M6#BT'/\Q$@'G]!S;868E$6%1<C=Y^)#^#!1&/8C-2V66X;SET/1GD/<Q-\-D
MJFT9N1>J@C3,1(':UB[4I<<3N16R-U%\B:3@7+-[^^&IS:P"L5)D0:)51!<"
MV$AC))P]BIZQ5DDY#EE5"9.*2"K)KF!M.;9AX6:\</0A7TMS'+@XR[Y4,,@S
M!>R)NI?#*TWI7!7<\]RR*OH@_)^"=8*\TNB70WF)781UEBHZ)%2["Q3V]#2V
MU W6C@[V+M9;T@QX@&(JQ8-/X#$0.6L?_UM-IF_VUU%&JKRTZ!E\_@H.,K55
M;GCA 2O1.#<0/-,8OEM0P^$K[-P._VVN!/MKXXX"81BBX>T7L3J>%21ED>L3
MIG=I>0I>I8R8(>XLL04UG<(A>#(^L]H%G!^K$KF4^B'N@N()=-HDH7W(<LT:
M''5G=E>"E(ZK,;$=8K1 :Q$<O>EN+GR8Q?PG#<(/""Z;88P3W\+#!WMF[.@<
MYVD($N[LY>5,R  X?C:E0Z_Q,B"&<EF/81_9"UV*!'; :,_<5;U!>[@11'^L
M2[!^:3<%5,(VW+,\&*H0&3W*2+P?HM41AZ2&VLPY12K"$T-ZRGQ,WIZ9BWX
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
MMS3!1=F<)+<"TZH&BY71IT'P?;HNA7\I76=Q@K:6:&)["?"U;T4IU$3-O =
MONA_BXHAW&A8XGX?JARTB<U.MTOU'#8[FUV,HB><T^4/C>:1T$LVWR/$%9*%
M66V^_/M<;V#&-U%1V?TLX7HK:6;:;]$7.;>AMARN3*\GYE:9A .4[GHZAS\D
M[EL-X)E$+%@P73?TABLLR*&"(2H14XKB,_C0U;!-/&\A1[I1(G/).->]PO#?
M8*]]IDU;2Z'1^6601SY1:2FU72XIZ^\SL+4D(=4EH[Y0V'T6NWV9T7&F>(F#
MK5V.=#!F04^F<2YJ"7,E5*<H:C&H58[FKI[P#\>I>'.R$%2W@JL#7Q)X(*9*
M<>3MQC @J+><3VQ:%\@;C(_R<@3]5 Y[/J[92LOVI%6L9"I38QT]>Y2JG@V\
MMA888\MM;Q<JB>/7T'7YT"[OVV!"J+T%[^,X8\4&5A?&D?;*+4S$<_1)<Q>)
MTK;.V+"7 F=KFU6GU80CJ_ 88O8RYIHY1B8+"^M:< ,-WM1K-(QWBQ2P N$O
MQQ=GKE"D"8 :]!KN%6BHRA7[X50;<=*Q9U+:VK>" T0!83V(]SEG/E']FE]:
M0:]"?U<2*W'37P7_!CY.CY)?6!+J/.2:<29FN9==3QHU%Q(WF^1&'N@1]^1P
M^2[7<B6[7GC<F\TUR]O^)VY9A_B2G_"U*X;-M +6Q8E/'"X6?"W8:T+=Q&T6
M.4C)O,?*I&>&9@_2<"-8VSL[6&_5JGK:*#BM4*9_BZ5>>VAT-CBOQT4!UCY_
M;JN*FY9==28J.1Z%J3'. (U(@S[#<J+6:[AEHJ/D2:6DC"J51CT#+7>\#@3Q
M^WHV/FVN./H@R59'[L$UXN J28[?B%W[6#7+"1Q*G(1MCR0-3]#&7"%H:*4*
M)<$8&RU.[;V=DQ)N@\2-6@#YHK$R1:,NE3;WH5C%J-R#;3I&X3:N+$+I0))>
M:U^M <+@?L%=BP)R75N)PY?Z!(LF9#/'8=DF*BG#))N2&K9OA ?GN\C 8G<Q
MY,8D>-?61V"TV.1[(K^V"&4" <%[1OUF^ GA-D1W1;NTUIR5DX),B#2_I"8
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
MB1Q&E-'5P%2:4[=50-A\QCI2.K< CDF<1-+XF,B@3H0J]6MY<R%T6_.-?Z2
M00-^RSHY=3-%XK2D7-C:*7X1.VH#*J3RB"50[U;OYVC_>._BM']N6FG<,T>C
M.+R T$TEG$,URU#=3^-PKB:/2KD[*,HT;%(*9,8%"%&@I:P+@E E-XNI,6KZ
MJLB%C#*L*V:=!5S$K]9MU;Q02Y^+35>^VA7**]0)J]*52^9R&:9PLI3XE N-
MLZ1>L52M6:?9%.X"S-3#?JB!  S,BDRAEE;@$I'Q083O>T.8Q_R%.&B%R=E'
M=ZUBIXOK.>=#@TU&DU&'HQB[[?@9:5R>CRNOR$.F\I*K)N_/(D['#.:\TNJ3
M<_F@_)#>?R99W.9%>#@4REJF#$.LV]UJ5K9GU J!1K /[\A6S9;96GJHN)NO
M5ZN;Z\TR)MY5?)\K0"]5:&WC^OW_!O)XL^=*WGOY^5[B:6RS(?LPA3TA5<*N
MSW=OQV0[R@PW7\.",_YJ;)W<^?P\=XZU@ZM9/^X46[6#(\G'=6J)* 5?1]U5
M)Q@\>)3.+7=B6.>_7IP]__GL@V\8W#_/LD%4TY"5"8BP4'%!Q8KL1<;]GQ6F
M5OB"F^U5AO2PC/(ZYW?7^ =Q K(C4OT9469Z*E[I+W$_@[SRR+'E8<4*Z8A7
ME>0$XUP.HQ%1X9R"P:$"A:K-R%<7+6.MG4R]C;<$_;F[Z)S+?;/3>>G#_3WU
MU13%=,!CW^,0\=9[S$H8+N78"Z8\YL3&DJMNX4R0D_)/'K=H(1@5UTGG$N=<
MIR&/N<)2F8TT_8'3J; :ERW5B7%IKH@S-X\4(_R,/)%B49D?9*I[/>O[)VT\
MC./.@-55,H5=RT:@8XP1NQ'%_&\?>\EU6YE K4N0-=)&)KKKXV #X(+:-\E
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
MJ%A,*0;"$UQ1FXK, 8/>PK.P^K@&H9O-*,N9*4#J:TDZ 6TB]9]LU31@U%"
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
M5#;(JP$(FR$7;GJA7"RUC+N:[G)"L"TZ0:0&R,2OO>95%][VM>XB,Y/K:[&
MEO4LZ[S6CRM 4PB07SVNGM?1FI(C(+C9P9=BV YU *F5<3V01"!;$(B %HJS
MH? D,ZXEG1%64Q;:FW:#CW__0%007C]L^EJI_4VN*J7W'\R!N_^W\P\'#I,U
MTI?TJN6SH]=OSTIO7^49W2;S!S5A-I-*GI/BI4H#NDZGWIU_@/<RWA&"7U(I
MO_?7!0@UF'!M%1E0(#$2-%0YJ&6Y4,!Y.)/0X&&[WT*.0B8+MS"=F3Q^L(2^
M9X_#K?.@/I*A'\'\ZKP]!NA3P0D+Q5@L!_X3-V@%)L.BAL<DW[=ROO"F]\X1
M.#7VCO"7WAE?#'C[;U^='YT=4*H!<X_;1KEOVL+'O!AO<;*(SWN+('5YGET)
MK%^A/]98GX&&ER<'^NZ+M!.7JN&/2]7OXE+UE/1<6QQC[6JZT)M2$5RA&C%;
M^/3\_:#9#'XY>=?NPO^W%+)R3N )5:5-7[*9I[[,A'N=DJK>VVH"WGPNC<E'
MRL<Q[%>$&LHUT@OP:E*3\18VFRU+Y[T?S7/U<47WD7X3E7=#.]OH-C/.RFFF
M>58T<18E,%?\ _=%*FOGJ^]"HRO'1%[SHKY^D34H43_-KL\$5[IA!$EUEE$
MW1:S"XQ:CG5P$=-25HSL5YRJI;<>JUN\RB2Z1X8J"50CQO_1-*NZBOH9-EK7
MZD30K1LZACDV.,.<COSQ0*<9G3Y\HO!!1##[% T6:8>A@[F.]VMJ1UAG"OIB
M4XDLHL.4CY7'7=E\MLF,N\2JJ_RMB/Z3I ;1XM,Y>W-_C4 #W=T_>6",3AU1
M4?!_DC-,Z D2<I7\@20?(Y,[60?EZ#(&GR165TAVFB3ZA[R>^9@]/&LA>77J
MES.Q>+]![O2]M;"_.>JJS@[UQ;]AUW->5O9APT27M<(]/O'>1L7GZH[='\?3
M/*-8#[O=>/,S63*044 8Z1/D[%A=?!JE ZI =^Z *QC81V!8Z7_G!J-Y]P.%
MY^\_?3B6].NCOQ^=OCGZ[?3-Z<=_>N]_]SX<_<-[>_3QY,/IT9N=S8AX*S%O
M53WC1+OMR*\*BDNVTE548"3>NT+V<H'TBJZB)"6#@QZQ;PA5;8?46=M?871,
MC@25_HTZ*Z(]@Q)%TD)NO=T?==*6*FI"UUDJHI;IM!]S%S=.RF(Q<V[ &*0*
MQH5HK02_8M!;+S"G@[,3*6!OKC(H7 /CGTQ*)[II7F#S>^E$BB6L6]]N[U)S
M_)H\5YXUFC12N9,;\BIDSJTJO/D"W0L\!#FS4U9"WW#28*VTB%%44JX(&/H:
M7^12H'Y-&:65< :'?T(\*,Z4T8TKDL1$17%#I$A?0#M0"6(VS[F$7SQ1TI3,
MA:,3F!>9A,1,_?*.1CJ.4E&SF%:!BR+16+4+K)V3Z+1?ND=3=7IJ@'^W]@NO
MJ1SRCNF@8@-'*@>HH0"BB+?&ND1>NNE%#26=E+I6SI4W^P5CFE%I9?,YT% $
M04EHMOP\@?.6M;OL.E\0$\&5V!M+\BOU.(X 1R3"W#\WWL+=9^$VB=R&MU*R
M\B3\J6H+P;&#R8Y))N/19[[/0FL5_M 7SX*)KT-N"HIR8I*B(@O>#QD;KPO,
M6LYJ>,=W]S2B8-3)_YZ]__!Q9P\<\>TNR"5#J2$ X K2HUT=$*>:FP;5F(!7
ML1F">7.,A%AB.)?J7:\)J$K.#T&9+NS7E%82AU;.3.8D].L(#$B1$VJ&N)<$
M\)N$5,&FE3$7W!?)%8O=)%TPOP\?0HP_RI'[FPQ<_Y&.Y&>4M*+Q,D5K9TNY
M7L0F6I<C)UABZ+LN&,?=.!AHQ>/BE#$<"'^)IK,2"X%\[R2[0*?C)8.EE'/0
M$W])4K#.WYW_PT)3IN_?(C)864:+"[#:WV=XW.7*C%>G^-'\$EFYD0,7)N?&
M^P>Q8D;S2]_4XNB>E['M I$GXI@!T?@JHAITKG84"\)"M*$B>M2Y27SMJY)4
M&W!"P<L?E>AY'$V0Q]S%>3'%@_;1J^M;#:29XAE5<%D$8>%SBA9F":0W2^ [
MFC/LY!,BW,]O#B>8:FV2@CK-)ARC:9H8XB)8J5 /U3+>*V.=1'0E9B,0V)@9
MT(J 5^A)<X+ ;F.,KSOVE&LR8F*DK'KS2'#5O-#JO$:LHY%B(A06P<H<[>H-
MY$="_.!T!B(]+##4L)" LB(:$!M0HU_BMI+TE+[?&G2\?61;T""3#C"SIF<X
M<+,@@J[?"D+XY<"4EQZXB1'!P&\'@;??MA$L[0=-R@2!D3-K(R-:DMZ*OZ"R
M+ \JZDS0U<UX>"PM?S!HJVHTW]MK^]VPZ_:H[;?"L/IN^U5.OGL8OO"]$&8&
M?QN&UB"JW=4OU:_B8+5A5G O_ZU7BJHH%3XMQV_(_U5TS_P.EQ]X%3D2G1I+
M=!")(6:=(RRJ!4"%KSNDXL.OM1Z5DF,ZD=0S32[JK,:N;A4$]> >@U6*/;Z(
MT>Z:76*< S2![\T(_<+#C'8X8F-O8!+[K WQN_8CSC$-@B]4=^(^H?7C/N'9
MWR=L9!?_=G3\QYOWKW?5)/X-!"K-+QBA9$*7!U')43\K*D<Q0\KX, ZC78M
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
M2?9ON>J=YBF3-R19"?W15X:'^@N,"4QSU1S=27_!NWKX]4L//(C2(/_01S@
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
MF,@KSY@>M/3Q-KRA<U3WWT7E./KS5R=S]4#Q3A,'>5P0Q4Z&;#O369%?T8K
MF\I9,D<6M8SXI],TSBYB3%5-:3,)M_0RL[4I!LBSP^@"ML\O^63"?[FDX5A(
MD!\B/6N,Z;_(&B?,WU,9%5%RCI'UTW>IL(4L&YKQF3PHR29IQ*1RF<O"[GN3
M@K0U$PPA(2A36Z,^N([3%/]_I*FXQRC3Q1R.3SP3^'%*8L;7@".A2;3GBR)#
M&E<ENK\)87P5,VJ1+4ID:QTG,RGG:%H+:TV_SYG/JB,E3C$G!E,F=$)9#F;/
M:)F@K568)2FCJ:%#PCJ3/$N9_I0DRWX<.^-[P\6<"51KGR'XI2(^U M,HDDT
MF\% #?X457:$?;J(BK%#ODD:/*;\;%08<Y*>?$CLN%>Q>2>^JD#"5V^R2)&+
M' YJF%X/;1-%+HBOK)^\QU8@7-$'II/\4Q1':#XAB_'7PZ[0,WU][]/JPQM
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
M*BO>/IV&(/OHZ&.IC_1.U/^O#YA>WVTU'BGO_"G3ZWO-QN";3J]OM1O-9S7
M^^;7#]KK<<^I)W@$NSLA&^??K[WBSV4&[IVA[XH$115NF8Y=WR(/DL#O:/O'
MN(M^9\[!^]]'NUK\$=.8@\YVLLC=/;M["2Y?Z;^SP1YS^@,?'*_G._T>9LQM
MH8SBR>:_[0>;H6P^IKH!VUE\K0VUS1,K%5C,]OJ)_$^G.OJ-<.V+T:>2T%:C
MV5P# O7I]<!@@UOFIYO,7DT&W",3JJYQ3_1'?",7FAX_47K[_.^20[B60YU/
M^ KMX.L!)6\$#V;CJ! D _'!'[K0/6RW&YW.Y@2X&_) M[J;L^P^#H7;CG1T
M<T?L:3KZ$/[!7670KJ-#VE[XV-M_??;V_B;_MF87+)%MY&)NJS?-K51U;JLW
M8:/_8G/K[J["LI1#P@+SV/L-[)K.^@E?VWII^!0O[;G2MBTML>U(RD__(P(A
MU2Z8,;"N;*RW5;8>^ZD5JW7J,W>GOY7-O_/][;NU9QLJ*]5#NO&ZO\#^5V)'
MN^3D&[+XTET2WR"5__5+LJE!L=6>UMD;R?^TFB2KN]BUL$O+O(M=@UD+JUU[
M*L-K6?B0XUU"(#MC8,",;:->=$N]"3N[9'RU C>7_X&-KZ?Q%K_KMSY)^&3K
M<9=>(S21ES,WZI+H?&.5M\ZIR:,\PZQK3)^@5%TG0\+)#7>0,T\SR?!RW$I)
MAI:<>,HPY^3\2K8>? 0?#,N\F*G$JTGR!3$^)0>;TU"X[U&JL5?+?,2PS#JK
MN 8*$FL3\HPA$^>2YA?_N4AFE"."^?,*C[7T*=^)LM8H?XH@'D%:B@@:ON'L
M_5&^*# ZI7^$'W.*2HZ%#9]]>E8@6#GG:AC?Y-E8I1.7R>@S/4/I0Z-1@8BQ
M5]&(G\4O.*D_+SF%+\*6U"#+F^D,[+02 9SC+S-XAE8.TYMS3#VRG_$EM7_&
MP+[)%26FN5-/4XC(LI1ICR/'7@E0+<]S&E\E5A*US$S!:U(BI/%(YZ 5I07G
MBG-01"7G22DP8&F:<#DQ(L?O$'&L9.20A#H2I9.EET1*<$1YQ)3BHV%V-69F
M&F5*=C#E;2I)^8S0:\\2%1Q$XW&B4^;B.692ULEHI09"50W XL19&=\QO>OA
M]8'>L4N^/69HI@2]>A$S7BGG:O'4OCZKA&$1@+5(X#T)8I :-%>>G;VNW^XU
M,;=JA(PJ,BO5-#!)^J5.8-Y:,F'A.#4YPD>2(WQZ>G0@Z:S<2&S!K<X6Q>@R
M*BMYQMC)0*=9%C$6L>"KTF02ZYPSDAA.-P0%@?NA2(8+6FHZ)4R)TN])6EXF
ML7><)C/O_ :4Y91[<)QC+N3Y F8<Q0U1M+W]X_/3 Y6)9A(,RUP CL]//1B1
MF_6L)DGEK^&"$  S3&:S/P!AU##1J)@*PKM6D,I.2S,8#CP#8\FS"[(R7YE6
M90XQN7<LJX7H]&K>;NL6MH/IWW6[W;=6?U4;NBR&%PA5-:<M2Z6']W^BZ>RE
M=S2>PDH15CDNROYK^AC6W^2<2H-2%S5F6F#258LAJC2<&Y@YT3H*U%?@HJ7D
M25\E1(1]8*8+I\,<E&ZA#_T(YL&O3"0)$TP/6"T++5WKSVY=><^=%<'= :W7
M4B'O;DF8/#NW=+6&% =!7E&.5G.YH\0<?SVR$PNYB+":@0Y**"^LK'C+E^?*
M&-Q&NB?H\V,:--\717-X)1CUCZZLER[XPLZ:%5=O86H1_EF)F$"EZ[,S3<#&
M&=.)GXUU,:$!/H<9E>--GX.1;BS&GTSJ@=S-=TTV-W *#_'3:^'7'#&_IK>8
M444 OO_<*@B5+GHGT$'H'CS5?J'-@\C;Z_FMYL##>E*V3)B#"Q1=PJ:.75N:
MH=:K]MC=D+3,=/A\I2.4I@V2P))*%"%V'8C-;*!$R=A1%O8_:0\/3+.$] 6]
M>@*')Q\22S5E9#R32*NZ1!PH)M"TNQVJ(S1=YL;&FI:L;N_LM?T@Z"J]9BEH
M/NYM6'U"[%^4?$P/>ET<"-57X%N8.D =J 2\CXG/I5-,H:HAK2?Y*5/Z:F:P
MYK6=3DB,'_A"K99SJ4; 3[+XNF)AN;9[I*HDL3BR:K6I:E6N$L0I1]/N+(VD
MZ.%$-[5_=D9GR\D!0[/G1IHI..6JY7MR^MR3J4FQH?U@:FKN$E/3?<MO;ZVW
MKYKNK"Q%6\/N'Y*'N!>$/M9PBG'(F@>Y#"P-8I0'57:(JB;K S8.$PHX3AC;
M[;!3KC#'8JY*^>C0K&I><^3O#?Q6OTWZJ-L$W=)F[;?7"?S.H+G\6ZVH_E$Y
M1*PF VBH'7";1*!<UP5Y#?$-W_(:IFI7!2]8SZ.#%7OML,.U<$IAL<L@+CA6
MJ8_CX=S6@WJRV#3!KSV2.V]_OO0B/$?I0RY[/*#3I/>B;C"V7N_7/*&'<\NQ
M=NLRX5P&S9X?M/HR<T$S]/MAS=3"V:$.:?S".J"XJ^[)5#VH[3/YED.X3L_N
M(I73F1U206>3#'SQ47%C5;C&Y2O%_'0/PWRC;KIO?9B4KG\J\T\.[SD;E\9<
ME^I><M! :CI^M]4ER2X2%$&8O;U>RP\Z?;($B%QE+C_R2<R:W9[0@IE&L?Q1
MG=DTX7NM@%0"V0SSY>IB8X@DFN^H9/F'5_3:'6=3UHA_I<O=T ^[X:HNM\+N
M.EWNP[![MW3YH^D2D4652I\X#;-7RWN/?-^(@S?NB%3X LUUDU)'J])NO7!4
M30MT3:(,1H1S$;=9:8T)N/D*,H2(>ZQ29O5N=];OZ1ZQS#5:G3N#W%CNL/W?
M8V?M*H=-?]"U UIRI-F#U:Z/]B_8<B6'$R7!;X9]%7R(&+*"]0/7EQ;Q*(9S
M=4A (7LM."7E6=TPMI?-I>(T([^@J1[B-JKBAVZ>U6LG\A&)RFIX[J[5Y: U
MXS '/N]@.<ZI,WR:^VC^<^$TJKQ.BWV^=O<%62B6$.*3"B@HU<H>8P?[9+AB
MY_-K0@I <1WGB^$<JYG5U!V8B9D7"'2AY]3,I+=_],N'@VJO<24Z>B5N/VGY
M8"5%(1/9EH)TGL6]0;.EFE(QI+8N<<<XDNR!,1CA^"5T"%\$:H\^&9*$Y?0C
M'H;:8+"M(NI3*^!'5Y_X1S7OH!-\++@?0EUEOS@1MCHT8S"*YY1Q*SJU!G<7
MT0S 4*/?4;NJ/6J_P,L)KOEO]*QEQI_6J$Z<U$:[SL2I\P]U63[^@ZU6;/<Z
M@:[3%56:<F$U^G]%K(:3D!C@A41L5A_%:)')3UBW,OFG<8RM#38WS(D<T4#9
MH= KR+*LN%6W7&,:15[0?>$J1*94*R_9U2P?E7-SC?.[:G#ONPK%FR;9HM1:
MQC)D#W"^;AP]@I8LAGS,/E.6NA.A,-:Y_7,MVL>5.\C?XS$%A3E^0^*W((V)
MJX"%W*A_HKD0O7&I>*6[M68P]G8OE)-==ZY_FW?RL=I$9?*8J+"L%);31RB)
M2\$?%A"4T+@@FEA-7!=G5TF1$Q*6[TW 61<>.0EWY,5%E,%CX,A?SUEE8SD^
M2.HLNE'%].IRT:[MISO-2IPD4H EY"R:P+G]7MR+\NYH!+9ZF6A^5O*(,/).
M%Z>6KYE@P"+&*P&+)]-$RJR>KO90K<B2($]4XE"O],Y3B&Z:2##S/L1H-N%?
MMWA(A/.AXD01DX'202A:1.)R+EH(8JS0MH-?TR_TRNG%E-@K P/X3C3*GF3[
M5<8$*4F?I<EG>.LEQJ/@/<.8>DB@!W"Z1Y\12.(JTN42.0&C+3+Q,[&;HC2S
M&&]/'8],0&)2ONK VQR%9$>"^#F^L9#/3%N7<3H#X<38L[64*/<IA0<,-% -
MM>;NW(5:"E#C7[48+H;!693CP>>:MMOELJHD6"U?X]I1-#&[2#E-P0Y73F&Z
M8<>IVV7:<&"YRT6[#F:",L.(I_5O_%I^!:<+V$LYARKIMCJ"$^O&/&U%>=6^
M]FOZC'IN,==7]_ED?@T[R??PO\B6'=OOG\#&27B_9W0_*,$A&)J*9+"XH-IC
MM#$*R-(MPQ4*ULCH.&>V8#_]X3,M=41M:)9K-8ZWSA1:;ZPVI6]U/_U!I@!N
MJG&48BK$<)&D8P+MH$,D,F$R4/D^N,=>B=D5T.LX)ET1=$"SR8T*MFWK?.<^
MV.V/[CSU1495?65_Z87X!][=\MN*"U*78VQ+W<[D>/FY,'>L;PUBCX%R8^"@
MI,#DF,_0;.7:$?%ZKC-RV496_ DQ"$&28DS.V .[> H[FR\A;:28D<1(Y49W
M(<ZI?H5 <VF%92MQBE63NRS/V_>GT[R<+^$(R>CA (M-P(@!@N#U,$(SA!W*
MJ;#TR F?E5J#.#ZZWHS[8_25)&\)\;K,?/+6^:)#)@=63#+L#*JI.R;TJ^&J
MZL*Y%*WH=$*T4>7-\O0>!F+4!F(,-+(P5K+C[O_^OP="D9M;SJ_Z 1YJR3B)
MBAL)6:A#;:?5OTM+C_"L^>20LBE^_U\9+%TJOV)O(*+L)S(5(Q/NL^.[,(5Q
MA+D-^.2(3NOE&7KPVL1VV)5XR<-FFX9R,W'7J,YA$+0(F-F]"6\2\/E]2^Z"
M\+ 5'-ZAD/'^H^IO=00U%8[WS5^_JX"<?/JPA4SLK8G-\@0'C:#56Z-*_Q'Z
MN%((@D88AOU-5O-^B_;ZMS5*"QYE;5J=5G<G]B%TI=O=B$;J@3;4T:=7.R&L
M*Q>MV>B%W6U Z3S@:D(?77ZV!]Y0QT=K+-KCK,U@$QB-AUV"OL,:\;RJ*![:
MQG0CI>@@6-:_NOX8C1;3!:-5VM;Z@:28U?@3&,1LM2@$KP-EF..N;.X3RZ#5
M/Y*[1+QX.:]>'KZSKBDY-Z'=:-=FFK4:/9T^*Q<E@8F36Q<F9"%S8CZ8T>P;
MT+A+V]_0QC&%*//)A%R(&_LJ2A+"S"TJ6^ 88(W'^H93PI0FPQ@SU."G&."X
MB?7,'*D'5;*[1_0'[L6^[8])BQ0&PR8O(W9GA_C*0@'&FLP*152 71XN2G#D
M2G,%IZ\S(D_@_9TL0FI(X'L=!HBO)0@_659:\",K[3EGI5D7Y-:U; U(^[*F
MLO/8#VC#.:D2%*?@P$3RGW@L%3@8KAZJ</@LHF%;-^-X=4!W=@O> )*[:=TC
M8+,Z=)+852,UG::J$6P=4SMIYU4K4,R=1MGPZH?.-\F29[(?]I:NMP^^=K.L
M,C[V6^UU?JROG<Y,A;!?TS&:<D&F_@\G<L<)36-P@)4&=K6%+)84U_$+)9HX
M1@V)U^UV88RZN ?=&A[HZ?-=7'ZKT4)5,D!KL"2I:D25ZNEK$B=22=-?*$V+
MJ?\Y"BE>Y.#'>!N/-\[SZ]R&X*YE$RAKKB5C2A">4]4%!KZ0XK3MR@/%P_Q!
ML\>I?ZODVWXGU7!0+Y:O$$#;CSA1[FT$I[(7]'TI0[(OS^@"L@7R-."WFMHD
M^QWJI("E0;(B/=>8=L!U<%3%P$WH >'1(QU>EI@:&&[U1JN#JU;9MP*3W8XZ
M^R.8Y^BSE,U8:P 2VX@;S(Z33"8Q7<Q*; WCB'S$ZGYC%1 T(.5%IYG'"/3,
MM$(7<498S'4';*.],* H.TY9;458??67*?JB&K"[57Z=G_HF(HYIN/U!!^R#
M$I8MSJPE4V0.CGS:%PVF?ZHT[);5I[I9RD )'3FH24S5TZN8.*C?7#-CZSZK
M<%8$PH=3*5U,ATGDO>5"2M]['9>CG*]NA@C5SI(<M/WFH%^7Y+%CYOAO5F61
M&'S+Y<3.]#E31 >U.R6X&L%@T%-3P_^$/2_S0V9RDU5.M3!1&7UB2E[Q(89W
M0^4RV8+4\2AS4G;$.(]YBZ+N'?'\JQ0(O?*L<.NJIB=@@+I#I*YP>9:H8+'T
MPX9W5%&')*2X_EV_V^[4>@KP52=07S5942E=,.**4U$BN.RMEQUQ%U96RZE;
M"RJI^U^[+?P2!KOJEPWO' N+)KAHZ8UO&!$0_9^SW^IJ'BM:GQ6W'_0'WC[W
MF!+A#MQ!AWZS[3S0.3!3X!#,A%]Y_;ZND43V%+DU=/Q!*8U<KHPL#Y8Z+PI%
M]ZL_H.,=!]0-O&2B:AA_(44NOI%2V' 68.3,NG%F@^T:[-)2SV>X1AEI*=)J
M:-&&F$FR%_9E]9TZUS)%70P:4,J0L6N4R265F["/_\V-6:=0M6@3!M7P?LM%
M[-W4QZ\*@%;(N/AMOXV*6Z_?TKRO*''6N\91[]%%1"!$NMU=SW]_8^Z[=$[[
M0Y69'O&UYQ0I30I?90U9I_)R>IB=#K;_X>3LZ.-!A>!D506Y)@>Q><V(& WD
MM?_"F!$JC;72[DR2=TTP(BG*.=_$"Q54T'FADF_*Y(L44*)U:#Y&5DSY@@74
M_(2\ODN'X?'8!C]E<=0)N9(AD$ST>X;"O<B9;TMY<C!,A'FXOJ0$ 65?\,B=
MHPC416\0B@M#<UR9"M'H:+XEF*T,BD1E?*F=K;Y;7D*]RF2[ZXQ92K9-*&U*
M>2TJ*L.I99C^&0FMYSS/.36+\A#]L-]?*F:U^?/0.5%MHC= X^,M;I*:]@*_
MV^O4C=<7+4;EFY(;3A 6K4/X3\>WUZ3;U)+DU@?=/,76EU>Z*>$U"9_B +<[
M-F5HG=,JF1 J_7"YB: SD#902 Q\!">'ZCSM]R=OH1\EZ"!\,J:26DF##WL#
M*Z^^D'3"(D]9B(9YMBC)0U111,P ;ZF3Q:08PH_0W.)EEF?JDA')XXG$#I)D
M;^8RD^7^:Y0M,/.!84RNH6.Q!"FDH/F6E@*G)8N/D8Z8I0(R6890K<-7@@Y+
MR_/QTCZ=W(SGI0(V*4Y;NQ+M"01W.;K^ZN,;[>A@0);+D):R9U M@G_&P7&'
M"8LTR9^+6#@+*411'P70^M"V"YNPW0UP"G[2J2]&Y*5(E<8JIVB[[K5[-H_L
M' L1<$2$S01"J?*SQ )5!G>U@ZI#5C&(4)!9_'\6VYZ;SL7V-;X6V0I1N5W$
M;.AQ:IME<HO'KBS$NB3_?TB:,&D\IP=L,L+_P']E E[B*N5L)&F*ND?D@IIN
MT- >!ZM-S.M\D8XY3$]^^%X[Z%)(P4Y^MG<6I3&.JZ25Y64<S\730I_>V'J<
MGD:9FCK., 1#51(?Q^ +%LF0M_H[9+D+V 7DOT.W',:W#R4&:=!T:N6=S*M'
M,@8_&"K?]SJS?4M%APRCD&>_(O02@KN\_&IYM?'VHP.V(%>9F2"9+6-G;CIH
M9BZOE'0^9-CB$QK JN2)<^TQV[7 3'DGUTP.(1OJ09+7QYS)+;3K(-FT0X8Q
MX<!=9!P]EFT*7:74?"E<H9A[,H<W7&@ZYAF&$TLEM_JH7M$">9EXD*2QTE$"
M'U:J9'&*&A/0!:$)C?1EG4RWW4\XU&E+)JJB:C&#1L?Y:($OPX$4!6J8J;Y:
MX$BC:IJR=PTQ:AFGE)8-ULB(O%-^6L/*1$0]30J!.1'M<429BQ.ANBM1-L[B
MQN(*@4N3@J_2FLL5*V#%J,@VA[F<<9Q=M24]B<>J< _+M(1150J?+.,>E7N>
M@:10DN:"@NM"%$\E7X-E2U])"_VZMI-2EI',B,+A\J8D13Z.J7\4&E:RH1L%
MW9A<9*1N5::XF$TUJZ'4?8(15S4%>+9%%T5L+U(E:'?+BCD"*VOWD5[/-\8(
MX#(_U,)OJW66&7.L2!E:)9J!?@3E<L,_C487CE376GJR.]OPQYWM<[^S775N
M!,U&WTE $<D>)04H2$)[A!99V:I@"&_S:713.1&ND9?94D(8:99=Z-N[81I+
MZ+E(2/9Q>H[.C\'=[?XJ F^?29JW.,Z@VS$;MNI$\!F:\TN$F]87=6$7Q<@^
M=JMM5&T-G7(R$$(:2CB_A&SZN:>(H&W@QHFH ](3L,0JQ"15UM3G)'9Q!.HU
M(TV7HXF4JM8W0I;.M@F]H\H1A9??I.*HR.?)'"P9,=[(*58>UG@EYG8E8!\+
M]-*5(GE?I8?U+"NE*_!7$GFKE C]7G#Y76V)C;EA-5SCY&\$/<M6-^<K]X*.
M3JI_&R>P9!A0YO L%D3)P:*_(<#7\2$($ @ R!6=:J8,I9*.D!1CBLW?*,#1
M7TH%!:DO%7,, /*F<Z;H7"PYCR>9AJD VDIO_R-%]X\IE(\)6PWOB&+E0;!\
M6H_QYGQ.%:32=38VKHF56>X?*[VEGCJ]E&VM!!$D&!Z&$RV]80>P9CIPNF1+
M*W<(UL3'< HC0N 4CT!6%BFEMZ7@]1185)J->)CJE+>-66[]IO9.4V9%38JS
M7 KSU:Y6P_HP!Q5R;J$!&A%D^5I+%''/_"N.J%ILQ^XX1<7=<'&O7C]<9/(?
MV&IBQ%^E872I7"EW9$O+?(/&#A[Y,[)Z)Q/XD&PX:YYUL/8*+TEC.S-1:\^S
MFE?K%)55)OPJP?-UI\J5O?+Q7LL(EO\5_24ZPM(9IH ?9G6L*UI_IT,*-@Y5
M@8MJPWI/PCUF#:Z-2)X0V"@W,[Y_A%V 464,]+#C+QX'=&)XPQ=]V8)B@6IO
M9&",F%E#MRG)P8+';F":H=4#V\#56V9(1:96E%O6" ZP1;EP]:3RKPB)0_JI
M0D]8 $Q76Z;'UOY=ZMX9/Z!R,76\77+)Q'G"7JBW\Y!X@W[F<R.-"@ZSDWL@
MXKQ*ANOTTVV"2?LBS:FL62P<!!B]!0S=^D$TS*]BMCG6\20YX<D^$^T=5_%)
M=JURKB>(^UK)F!23-!]6H8EL>).EQ$!]4J$J??_IG)]K>*_4YRY<K[X##P[D
MB#8MT).^_(#2=C/>UNR#EL[94*E@KC__G".![N .S.OP8J+Z2LMLA&76'5#Y
M)<I01I6,TC4TN.321XK_5:Q-VE,T\)*@6C.IA56M:M]=S9[R1#'OF#\@\X8#
M)69(!%JO=(4'I@0&ELVW*H@@6,\\ =7F['QM?%"?E^H =<]*B3^;61C&SGM.
M/GWP,8X,OS^"-QY]@O^\^]<KG$RZMC>Q?KJ(0[$+P9]  :._@Y<PH5&FT*J<
M ;JIX"J! D?1\$ZP5I,&A"FD<,)=1F,E</"FD3@K=>L,P_K%7FM+V'@=3;.[
M5;7L;&*W %9J42_SZ])$V#%M?QQCWB9';,3O*0EHFR8&@_E9G*ZFZ-19]UHH
MQM5M+MM;P9D9(]PRL^H,.V/_F[NY!Z^O#?IM<;#OS89\I\"S]_]5%N7_W[3(
MM1DT@HTKG^I&4!=:>GBR4>C^G4N9MM][#FI8@O^LAW/'WJL &_?GT=B/[[U:
M=;RLFXR7=.K.#O<A6&=%^VV=/+!6/W)>MCHMA#?>0)6 ,;8%TEK1AH\QHEH&
M;TQ>'ZQ1&;W&.,*G&\;/WG:X-)]V%'O!P&_U6H\WC"=2G#][S49OZZNU2AL^
MW=9"W/#!YK7A%26W@I_R<72@!+V5%MS4R-N!,=0M3>"W^NL7K[MBMF-#V>_"
M5EKC''H.8PG\=C]X[*$\D0[<;[4;[8=:N%U3A9B:V'LX,_!)-:1"!%Q?16YH
M$N[8)FVWMVXM[M@(?PYZ#V">[-@@6[W!SHSPJ51PT&_TUU'!6YV&7=/-G>=N
MHG[ZXULS3T,P3]? O7H.:N9GV&/K$+H_A[&$?C-<PSG_-G1CV'XXOV+75&#+
M#WK+ &+?AGG*"43?C74*+F38WAG#YJ%T:JO1_=;MT\ /.UN/A#X_+=QLA-^]
MA1KXO7[G>=NHR]D'WXBINB&JM-]K=NYWY_FLQ_\S[.?FB^]X O!XOF/&Q7/5
MX9M-T+[7!'_IX$&G:-?T^^8ZI/O@F04[LLL$XOA\,12F]E><@#K/$>SB\%,9
M%[]^ZR;]7MCWV^TU[H6>M;W[LR28#+[]T/->V/$'K>;.C/*IC'NO"\; ]V[<
M[[6:?MC=Z')P$X7](.IX0ZZ:]=3KPTSOYEW]NBC]Z.GV>_I$.N@AA_*XV:E+
M(WE6J:9':>J]I](-K*C9/U>E)*?97.J<4C#]3)G0\T\\19K+SM9M@*<(Q;:>
M?=[IP.]M/]:Z<_:6L; [+[QO/?DT:/K-07AOJ^H1$NRQII'TW5WMJ=T.5PS\
M#K)]W2><L]L#_+G=(Q7X[8ZPZ[<']XQ:[YPRW'"-O7:7TC@>HEKIN0A!IUTC
M!(\3=GP0+_8?>9&.K['^VF */DXD\8$B">T!F)2/=?G_4/9D]P'LR4=>AM /
M>EN@;=QEOUG9DNW'3\1X7+=ZKXWD1.TEC7<W=L6=0Q6Q:=2_(#(* 5\H( F-
M X+HR!IIP/! %?$0%Y6X'Y!#'2$J;$SJ?P@:-\$Q,,*U@U+BXHPPS7=*)/4=
M36=(8.>"H#$KXD,X?\8Q\E@1>#0#CPU\!4RB6SQ9('>9C5O&##\QHB(<MIHO
M;"QUIAH8(,47@AP0IA R7] 3"##'@%F:VTAU@;J5$^?$!1.8\;A??P61Q1FQ
MJ&V7PH1UB&9Y).AUED3564%.;_N]L.OM!W1K*F.R7])4JQ(,^'46Z+N&(\=I
MA+_F12*(8'FF\1YF13Z*QT1H3T [%S@9&6-S3B8)@FN62$(B1^D8T8#&2.H1
MEXBYC]B;XX6&SCY^__?35X?0%S6'/BYJN9@2,"IBAS"50%S%F[A!*COXTT"2
M,3Z[6Z-L(UI(B3*/>C&CJ1JTO'W,R.V\4(PP@4\L!:VFW^T,*C0R';_?[:IY
M]!7^/1C#+;,(!@!&OR?TFWUZ3XC9]=1\T/=;@X[;?-#U6T%8:1Z$L!T$IOE=
MYR/1D$'BP6X%>WJ%@JI?:GLGR2KN=UL6RQ\]6&4(XJ7=[P;+#]:N]WYGL.))
MM1-M&")&N16!LVE9*[WG7H=-Z#*&T=S]*ZW4<9\IO!L'*VFOY3>[T!+[HP?J
MO2OP<Y;!<Q1<9P4)2<*OAJ]KWV:'* ^4X/J#%@E]FX1>7NYH9<3;0L(_@]"S
MC]P_,L"#6CB?)5!%K6/KP*J4CI-5<X!_G@SKM_4#ZU>KC&\,Z]=23EH<Z_9K
MC:X*FY8^J=-L#J!3^X5C"@@MD7U$J-<J$*<Q(6Z)[5*E;^4M6'VAMNM4FV_R
M_#.!#>;%-6*D,L).2*# LP09)RSB9&TFH0H1MCR-PUHB+'&J:"(LD\(<U2D<
M[T5>CO(9&59SY!.RK0]?.L\X@=&R?0(65DPX["[8VF6.!AH,<09O 6643V\\
MZ%ZY@-860V)X87QQLGQG<0%+C\:-(+""24Q=1J/T^/ \'C%@.@.,$?!XR>]2
M"R#@Z_:2AYXPWZ(!*FQK&@(UTH+Q)*?]!I*MP?=<26X%FTARIR+)[25)9HR[
M/!U_]<1"WO-.QR(WI;<;##]MX=D]"%H#ZQ?5A[E70;M7_0:] Q009,^JH@&B
M(4P@VGKGZ/M+!Z@QA0E&'%"'7DFS4T'W^J$UE<N@A[44C[W.5W\S1.*]"BC<
MUSL&XO 9*6N'23Z[C&!;C.(%$\6X -ZT47+8XZ3K%.:?9G<%LQY^A@S4[CMQ
MU 3B.<VS9)ZSAQ"/+C,X32YNV*K ">?FP%<@D@7H3H[ :Q>:!W&B,*?']#_<
M5Y7^B=]@>3ZX@ I4&YDTINA\,+N,0%"RW)A9K#+:3!>(O4Y&3L-;J2>9-9<X
M!I6NL("0$3KW>H[,/]:+(A>57=@5&8_2'1>T&&6$3DE\H<AV4"P(N'J'  _K
M](@8A168[,W\#HU")=; 2E.95%1[\!455;>Q.L&+59M'L#\K .#$YCJNC%*I
M"'.Z^EX6YUDTY[.+;6JV6CM^JPTV=!BJX <8URD<%X5'@-L&NGO_#7WPZJ#:
M0LL?M)O>?L]JX.(FBT>TIW[Q8N0D*1 []P*:^<5;%/2%:<6 >]TZG^#9]%L]
M;S^P>TKT;VF>CVNWMM+9_/M^#\>I@SP'3PBWNY'8H;=_/T]W*>X8TDWP&ON'
MSQ3L@>OT2FQAG\(-:D)O"S4L!2U61!V60V@<0(H*D.]%2NS@$?&%,6BU%1ER
M@DE6^$=%?>ZJH5;,WF-P5B/QP45&!,8(L&U(WAT=X.(!VS"[H,#!,<F$WW%$
MBH"9V$C]"(D;FN%H;<YCA95/9TYD6&V$H0UM4@+Y/ISGA_P7HL4>VFBQ NM\
ME"(''-)Q*HI>1# 5.YEI4B^C=*("#A17O8S3&?6;2>FJO;\Q>A/;HL.4 <(U
M73&(WVBNH<D50RHS+L)PDBPG0.BY4%/9I(E9?$'$?*H1Z9@.N\+8+=1J9_[U
M- I^,YZ,FLP-4<?!D)?% >L^*R.2T<-K\AD1&)U9ETN.Z2@.9FE2Q7]=TB]W
M7M#F0WQ8EOFE0X4CL@3Z:R,K5\B>2R$3"P;4TR@MD2Z/D-OQBR(6!L '!]MM
MAXUN^\5F-RL;)U6V&ZU-W_$TR+=/TM%CTA'/HJMW ;!]HHX^!#;KW3;+Z]_.
M[G^!NJ59#!JMWA; K;;4FY^[6[E<WMK<A(,MU&!MKS>].]2,W$U$3SY]>.S]
M'#2"_OI0,]L2N%8C7!^J9WLC70=0;NLO#39"O7H0U7?TZ=7.;*AFH]?9G>W]
M<W^75%^ST1VL@1;[B+WI/I;J.SY:0T2W+HF#]<'/MO12#P[;Q]=]:VZZ[;]T
M6_E<CQVONGOTZ.-EK$,^XNLJ5]UBI*]U5]%C_[G=&+S0,7>5)' -AC:&,>P\
M)_1^:VZ)#+W]7A?<6O*EKX6XZV8IO+XH=<2(R+LP?+#DX^]&$.D> 3W,.I[?
M',ZO<XSEC#BERMNO\,L<\"Q68G:WAY;<0';?O7/K=JT[MR-BCC;1+(F10Q>6
M,_5\+^PM\UYBU"G^<Y' SL41K-_'6H$+*_>#/:NO*,-$5$6456 ]<&SRB/IZ
M%1<FI="^5.N^\+V@ _]IO:#G[=P@3;(DXX,?X34-75LYA+/21[K3HP:;*QML
MV@T2 5?NP0I0QY$WE#K??J'[#W_B$*PF8'_H)MS(^$Y>[%3#CISI*$0AM,Z&
MSNO Y )9M[@HVX8TS*(88?"^ T6)J&5.84[KY,!]NFI[,X?=PB'MGM]N#;2(
M[;<&*T+C>.?2<W.^U&5,?]"NAL1/D:R2V6'E=@]>R?$YNK'68T+-ELSI1M+<
MVE4H;@694/5QO*!+O-\^G/SOZ4?%6I=DE@:4;45OPM_'TQ&&![$+*NOA#PR.
M4D:K1:$VC,JD5%QP&?\>9M3^O=LOV*"7-81?C?H(<\U8Y%H!L0B]_:"]ZEH"
M(>[JYIX S\S<GU,4ES<49@<+.1DH+6C3XK];4CJPYV0>\0Q;S#R,*-3J'6%<
M:]J4=\YB1Q8K&^Q@:A#=197IAGV@F'6E,8Z*\\Z&@TLBVM NGH1AV*4B9QZ
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
M4YNBU( 8BX4V6Q0C.-[P%T5TK3GM2H(L8PVEC3=?8QEA0Z"E")B;$+OBDO^
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
M$+8T%<%%A25">M2Q<;V;1/*)?Q]AH>K"/N;A$HG[O@#1J^ N@I*0$Y)P,=+
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
MK19 (*A5@3W535[[]'<D+=;$'=W5U5P3D'2'R]D,JO1U7".KR+;CF&P98TW
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
MH*476(84+:51$KT(1"^Z60XV.$TSY?:W=BK*JMZ7=55E45"QBH)*$I9U58D
M_H7]W;88!N_A_VS$CF)^L$D@H33P=N3(H(:Y$@>$R2QQ<-ROR24*L;I'I+2$
M#HLELAG.LM+'+5GBH%@BFV:RU75W13?=T\NLW&=S$CQ']CS"#FI&;3VDP<+K
MO4*J-T%RSJ<WKN/*N%TNFFWE>*G21M[3T6;2K%RF30IXM)EHFB/M6$Y30*3&
M"?.V],$.JHJ*#DZ]"/QJ;%=$I=Z%OYGG6J8_/OET5EK@AUWXLAF/O* 42QXY
M4!XYS9!)4+WZ1):S#/3L8GW"IB.$"N?0<>)ICPRVS1!AZKOM(\WAK]+)"\R?
MS"\=O-RD7EQ_(>&3;2>$-8@"#=?Q/]/I\,\]X&GT?P:>"1?1=DSO^2I@4Q\N
M!#*^YU(KF8QSY.(B=O5JRRA]B:-DD(Q*N3J-TMD\2@;)JB2LT\DK-EJ6A!5P
MY46ND"A-^^(MO23Z,9>$W2WU,D1"J?VF\TE[#\-$9H+PJ3\SA^4$B=O0:^V5
M?4=OSE0\E-//PE.HZ]7&EF43Y>GO\_0S<0/JNM%<V>.\3)/5*P5W M)Z$6]8
M63R8@3:LSWYJEAL^3EA.<\[6GWG&8:ASZW1LZ.U..2(OTVS%03!/)B&XJM[N
MELSSYI@GF_ <2)Y:3HKY ()PA5>PQ0^I%5Y2%"564Y+P[38=G7SJFYX#S_"U
M&?- CD^G(.C]L>DQ[?31].WA>UE?70YRW^TU6*Z7U]?1\G#OF#? ,_V,)[K2
M4? M^5E5;5_=7$9ZN[HZEE:I;EF]79I\!\<YU2PYIU;IEISS1C@GZ2*\EG-
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
M$3MT.+\>/*:$#)A,'-!RIYG$!5T=ZLL<W<H4=D(&YLD#);;4KSK*GS;*!.4
M=Y18AU&V(5=\41(JOSF(D$HQJ*'$PH[&)G#6OV8]-UR0)SNB.J&*NAXH((1X
MEKO)!Y ?Q'FI6/YO*0I)!P"QP56E&5\$7-0YSK0(/"JD3*2/3SKS5^')+7UU
M5<X8*[4-P^D=LE N>'==1UN?@R-&*RER(R*R7QW%*I2)5'6=3EDP5D&J>$@)
M.68-^J*Z]B30C)>/(WEM4"ZH1'?L-_%!G^?8(A-MOSZOIV9M77A$L__NPNVF
M&IGP$7#82 .CJ1&ENF(4WV;OZ6P3'$_\-)8K/D2HK,T<C"H!]C#A($;=E/&
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
MTSE !"<WS>$A#LX1DOYT50L6F]Y'G)*;XN9*AF5:5AEOM=0+32WE!#OY2\-
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
MLAA3V);[$4VR4!+XO)-T@BH#V;_P],=XI3\DE6ZO"]AT\R=B22VV*Y5Z6>R
M*'7NT?D.A"N\,*CS6P"*=0>2SB*.9E$)>48,,M4<^T*SQSIF>) R*?A6>,++
MY7RAFTM")+YJZ4Y7C:*5NPW*QT8]J%)Z6=J3Z^#$F79#^?CK$RBL%\"7+2U@
MJ72S_JP_U"7"W\26*>9"7UPQAWZ)V0A\9#E(_[_)DC\-EGZ9C=Q;W3*H\M?5
M'&R1\0SQ[C\1]Z5FP[9"@T!#,T(U#-B2^A+M"90L3Z9J3:@6AV51E>\]P2-!
M\&8VJR14%R!\WF#_@3A:;I,$%\!,>/)YX#;(6<YN"[&)1#$-U5H&+QK.X7CE
M9**\N@FTE]C7$*'BE.YF"LDN.D[HFPA1A$HO0H)[NF])5-A_8)X">C=D](;]
M%-2?[PCPPL:E\=K+:EQ:F<:E2;'J]1H=(^36LR2NT9 HU2FY'5:B;($%*$UN
M%]KK5A=3<*JT,"TJBM"*!9,+#K"_Z#6F(ZD._=,/;?*"QWPX>6JZYK"I;D /
M%13GW'S2T / KN3JTK\RJ!-!M\)A>F7TH>+#PQY*DN!#02N^ZR:)8OJ5:=VQ
MKU^;SB/<]';JF;AA%%P ,YHM)23O:C89?YFX%HHR;&VT+I*XC,-WXDL-O+26
M:+%#_P9)%SN'ZV8?OK4V5TL_"5HB:!+ _PP3N,_,!,>4X!D$7\B2F/$!Q@)]
M-0:+(,^"?&%<PS4"&]'L DOC14,3%[X,_+?(GRY8*C9%QN3?8"M16XJ\$#"N
MIB#V.2VYNX+=;J$NZ55PS"<^B>$<8#R3E<O L/']I#MX12*-0-V\K=8(# @\
MS!R/7<MB[@940GQ1+(<(G1$6?>K[1_:=0#;T'_AHTD_OV%O8]XP$DTM\YRMX
MY7_B&Y_AN]T:Y_2M1L;YW2@+TZD?87*$/$/< 40]7C5S6L.3JXKCHRFZ&3O
MMGW"C4L]6+[@0/3@$<:3&TOX#MP:#VK$&!./&4.XDFBK"U=8T<" T<:P78"B
M:'OCG7W;F'(%R0<G9Q"MEOF*[,(KY14L-(.].G)*?5$UG6H=0)TZ8<"6)O0+
MK[!<%[]#/7K<MF8B!J")$ D1@R,^3W%\NW;V10^8O8]))?LV%3/YM]B481R?
MP].R0%]WL[!IJ]V^?64B;/'NI@$K[V*+;UV=&$?3IC,LTE+.!YL/[F*A^WM1
M!54. M>>$=COP0WH^;H=<].FP VH(IYUW7RUI8^_:=^H'#==&X@.]H_V[=.7
MC((H]V";&FAXT&7>3L,LO%[)-FJS[F$K/EE@NR?JON-=SPW>9JO>9T'8V%2G
M?DO9/URZ=Q)7MYT@(AP1ZAQ&.^D$)A(EI,>ZJ-U4?>G;?0BCXE[BZ!Z_<SO]
M:1.,$#N9>&_; P&YX DY%SIOH=E;T]YJ,VTR(<87C'_U-ID;,%W"!R]J$8+B
M_QB,10W'8]C:$^GR;8$Q,/M3Z&"6X^;9A^N>!%N>LU?*@NWQ\X)*LI'?Y;5N
M8CP4K+[R[.O]7 >)X' #6B\[1+0&44U UG=+MO* 9H1NA(T",,A]W^XEKGU.
M%2:HW\W;V=?%YK_*#]5Q+?COOK:4(#.JMX,9U1MT$^6\\5?CP?T8U.$!=,/N
MX8&8W6S@'1 [& A)G<O>2DM*;EA&,[V\%D2F+?LZ=DMX;J +E]S C1]?B?Z"
MJ?S.S,YBXPL9P)*"::V\(2R&->B3>WPU2\B1[/97NS3[2R /9Q8AF9C (II0
MI6!6YW#WU97I6IG8..G.HMEMK.X1;BP,7)20B>EX16-A-)1_F+MKB$O/DCO-
M9CJQE]$>X[&ES7^S(V$HBBC FU<N*S(3[::DF]V3$3N1)%\P4.@ZU$,':">V
MD_=>_9B";S^-B6:/,1&+3"[?L&0W*BU+D*&YF2;WZ5 VZUY>FW+LU[)Y<S+;
MGGM&D 11?^.II_66^3JW,*V'>:9H[1#UQM%,G@FQ0U%>GHRS2M9B:5">D&.Y
M')4;RR?L'Y1]F,C] M+B^9V$-X:"CYK!4CT^E48$QGJ"PP+0>],A>]%[[SWI
MAYC4ID1(QG>3[@9U)3KK+C^!L,&Z$,C+=6"(9<4%7_<]+/N.6.,M(:$[UR)!
M+36ZN?+55*T9'Q6J;_JZ_OO]L,,:19J[R^>D-3ZLLGOA>+]Z,;?&8ET6QS]A
M]Z7&;:"1X:C&LP;$H '[DM;]=,+15%CDJEAEZ!5W^I6^1>4R8^&I3F@"$N;U
M>75CH!8(ULW;F&I*JWTFP?7S2E\OT>Y*T^V91J1S75M(#TO;(7-I:IESZ=S$
M@,^#"X^$C2!+(V-<ESZ>/XP^H4:\(D^6JUI+B>H=+&N@/@7I=::-9Q)<);UJ
MNHX9DQB*A@]L K_2!XZN'WX?788>B/J4OA+]DK]<\NX76"F0OJ3IESH(75BB
MEVRM4?U-OTK?'A7]%KOV"N[@$!T+6M<!.ARS5%9E Y;_"L*")J*PBVT-_U!C
M]+,Y_8!Z(GP3B@PHW<QO]7F_H*G!%N%)GC0'F95<3S5JX6C^Z_&<5\8P2O<G
M#$=:*DT.PKH,29UC2OQ_:$W6!$M^S6>#_4K3XVG!\O>_JO/%UR% CB602"9(
M8$K\]Q.+?45)TX)OIY<>7($N&S2],JTK,A^K\$8<JP@$A@.1/(G3 8WXHPK8
MJ9L\0=4=-'VTJ9]M"UR"W8>;)+0S_;)Q8(<SD_A;![**/9K3]'OO8EZ0#6LV
M?1PPB;!Z.#Y*,U[@:BSPH^4.X?JXIJPT&FE3+$M3Q=2LJIC*5\64R(-"'QE?
M_W2I6HAQ&\R\AYE:+CNBNU8_S)<JP5HENM@"3(<SU08:$F\I"]3-,]JBPI9
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
M2Y_,R1+_.W/F^K?_[_\'4$L#!!0    ( +E^>51ZL,/WEA8  )E9 0 1
M=71M9"TR,#(Q,3(S,2YX<V3M75]SXS:2?]Y\"MP\G"=5EO^.9VSO.%NR+#O>
MU5A>2TXV>W65@DA(PH8B%)"TK7SZ:X"D2$D$2$JP1W.!7TP10/\:0+/10#>
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
MD"&YGR+9I++6^DT-NIIYCN(P./W:30:=6\D1L;()/'J?,/"]E1B]\CCM18.
M_!Y!A=M/VA.15W-JG.2J,>%4#@HI'103LCVS29!@['^CQA;WBRAJ1G]5A&GM
MT, YJAWPZ[H0J_L$==^L0A,KG'RV:S2V6)E]I>L&U0>5V4RVZ=?V0&SF7=!M
M)E5X,VMZ#FS75M[.73:5T1;2S%E4IHMZ<[>U,=?VYMSCF3PDX1ES-Q]I_A/V
M(LEU,PBB2:VC04W!:.8LBFEM)=],P@J2O*Q$M\\90CF.K'R9L93G<]@RU;$V
M04T(E:$M?ODYL96+U]AF94HXZMX<]5%U',7FFZRLF!ASWNJ#,->BI1:)$X51
M6<5-NUOHI_U_%6;Y>1]/I]0?,O@!S[[/8C[%3SJ9,AZB $;A"4Y=TQ<[.1EY
M&7!OC_$1",C!\;[XU:!^$(J(YX9XU3@\:AP?[KT$[@[R\80$4^P0#86T\,Z^
MQ:^+?R+QW5  GZ@@BPI\BY6U^%;8;&/;QK;X%M_B6WR+;_$MOL6W^!;?XEM\
MBV_Q+;[%M_@6W^);?(MO\2V^Q;?X%M_B6WR+;_$MOL6W^!;?XEM\BV_Q+;[%
MM_@6W^);?(MO\2V^Q;?X%M_B6WR+;_$M_I\!_TTW6_ZI=G;^J2IK\2V^Q;?X
M%M_B6WR+;_$MOC6VO[7&7BTXQ,% %HJ"Q@CCZ;XX&J]Q< A8.X7L!FD[%Y;<
M)UX8I&\:&:V8;STKDFI G+T1>]IW"94$?_]0PL9J ?'8B!^KP"XTG1OR_7 V
M)8+4@6#]2-,,927E[R#' _'B^Y+P( @Y=L*+G9!'!/J3>IXX@R_]+<I=[ #%
MAJ1P[K()IOYM2";BF#M@* ("-(P$.S><1=.+'<$'/:>090?%SU/"*7/[,:DH
M/E=Z1YQ1N#.DWJ^/>[V]IN^VL(]=_(5,!H3'<G6Q4YBT;?RW_9&'?1?X;$:"
M&8\NU4*38=OJ(J]3/%QD?_'=5G)\5,#Q42''Q1S&0!/FDQ#SF1'^XK1!?$<]
M)) !#3.N6VP":/)TY0?B$/I$A'@\D)!RXCY.F9]><]D=Y@^$3BNX=O'*;1'(
M6SF-]M2:3,?W@VY8\Y3(6\I"/.R%9:)P+<XB)1U1DP<R$H>,,CYK3J></6%/
M7%R>7)/7(CR4)^O*"@$'P;Q1-B*Q#4WB0.?EV^2*# F'=WW\DEZS1<4QUE-.
M'"JY%\IT J,H_2.1LK@EUBBXC>HAK<;RO57+U5Q-K_Z!AYSZ(Z,?>':!<'J?
MRPV'WB9NRK8FPW;Q#<TI](F:[WF&;>,[5GY:SN=9MHOW;A0*Y> "DIK[A4S;
MQ7^?A=A+6E<PHJ[$:L[*-7%!C4VP9T(%IS7YF=#1&+[!YA/A>$0>B##1H+E:
MS)>V782]#AV27PCF\P&G7IFMT+#+0XRXHP_[LQ[VQ&GX_3%Y%&-H?/ELWMK0
M9?H&*M:.Q('KQ?5)T[:^&MUPG!GW!0G;8,(LC> =YH^D019?<J"4L/)\WT+E
MDAFNLE+S]&^A,K><:"LS3_\6*C-?<5!6)Y>C<H6F$2<FQZ!KQF%$\5L1&+6^
M,VN_.&,Q8#[ %] '"S&(;UYH/EZ%[+%W-9_VU"RUY=6[N;Q?HWI9J6]!'..5
M/*4LILD5JI(M*H7D);ST8*YOU,"[(6S$\71,G5M_R/A$)O=3J+0&9;FVJB(K
MS5VE7I4*;4$UDR4.81:(!8^(P]<2$+%<1$/!5K!2QSHEMJ*"V54WW:$T?X#M
M'IU0#W-YX59!#6L4V8HJ*JXBNIRE+H^B7JQ19@LJV7/2"P"KJ9CJ^;>J<DMZ
MXW*6<=_D!&NJ6;WD%E3X@3P1/R+!8#:-U0F('!DQ/@,+D9-148?6*K(%54Q[
MA@U''H.1GJOX5_9IG9);56$6!>O4MF*QK9AW+UEL,"JTHE ,$W]G@Z#IA-WA
MT<'AIQO9?]G=?1WV+,:/9 %:M4QMB-BVN1QC_A==CHOOMHWC;A0LLIM[L76\
M @42<NHLL[SR?MLXOYGYQ&$>&\W:'G%"+BY%'!$^>^3RY9+ 5,N\;76\(\S'
MX;+T+[_=-JY!X3)76,/BFLHOS*<A$QX!$93A./ 6?I$E<:M59(WZUO),N.&Y
M2X%X *]O*]?ZB@KR TGL02S8@PH&ZSB05U\V7^A\$;)"QFWK42W+5Q*O4NW2
MK-M6OQ83TQJA$Z@CQDIG43J5R6_H22HRAA,_D'3\=(?M%\>+ C#E'WNKG7#-
M^#69."(NXYIZP9B2ED>GO5D@X5)3V1C!+5P=:T^F'IL1TB/\B3HDNP]>N#C@
M8Y>M>\?\)Q((7YNXD3W()[58$-ZQ\!<2/L!0,O+I'\3MLTN2_>H^$=X?DSNP
M.?O/;,&%]Y7 J\MG(EUF0_6^1J7O)4L@G4FN?+S*%C&T!1,OP8_O4(\F*U9=
MR([%_>$= FV2"^B1UT073*S7+/YUA;(#U@0AB\Q"Y]QC_IOXR<(^X9/N,/6M
MSQ?/ZQ;;REHVHY!-&'0,J55+=3&KYXGW) S6</RU='V>@3^5OL\JOD4ZOXRI
MK5B%6H[^:+K_B0+IA>FS@IC.6=J6Y?FVHGK+;M$RU9VOEDR]QS/IDGH@,'.!
M.K:AAV?78 C+ 5U*3]=O2?_PK=^ZOZT\2!A @A;^O!]O3/GAN_\#4$L#!!0
M   ( +E^>50(J4WR*1   )[X   5    =71M9"TR,#(Q,3(S,5]C86PN>&UL
M[5UM<]NX$?Y\^15J[H/;F5-L.7>7E[E<1[;LU%<G<N7<Y::=S@U,0A(:BE !
M4K;ZZ[N@2)F4B!=:DKET-).)+1D+[NZS7"P6"^"GO]Y-@M:,"LEX^.Z@\^+H
MH$5#C_LL'+T[8)*W7[_^X4V[<_#7GY_]]*=VNW4EN!][U&_=S%MGO??=@8Q9
M1%N2#Z-;(NAWK:X_(Z%J<,HGTSBBHG41AGQ&(GB _ X^>"^^@[]-YX*-QE'K
MSZ=_:1T?';UN'Q\='[?^=77U^]_??.Q=OOSEGY]_>__Z3>_\;Y___:)U>WO[
M@OHC(I*GO?#XI-5N T<!"[^\5?_=$$E;($HHWST?1]'T[>&AHKF[$<$++D:'
M\(B7AUG#Y\^^^29I^_9.LD+[VY=9Z\[A[Q\NK[TQG9 V"V6D9$KH)'LKDZ\O
MN9<(Y?# EK:%^M3.FK755^W.<?MEY\6=]._9'+*@\)0X(N,)]94>H)OC3N?X
M9>>^M>JNFA;6*%(]=-Z\>7.8_#77&#KSHV7K?-\_'"[^6&S,#+PL-?OSLV\6
M8 H>T $=MM3/7P<75K$/5<-#YHL_KB,2T0D-HU^AV0?J,X\$"VN-)%C=*9@?
M#Y@/C?P3$JBG7H\IC>3S5B+AVV@^I>^>2S:9!C3[;BSH\-WS.)KX[>R!"IEO
M-WK>X5)8H/#B(+&B2_A<8(3>133TJ9^QHN1\#&T <REW ??R'!T$RN"Y.,CK
MYD Q)#,[&!)YDX ;R_:(D&G"UR$-(IE]DZBQ?=1)3?S;].L_NE+"PT]C(8#E
M[ D!N:'!NX/R-H?U,'I*Y+@;^NK'V7]C-B,!,".[T2D18@Y.\S<2Q%0C@!MM
M3K"<?71%448BO.PI\&MB' ?:URQM<2CCR23IK0U>=)+1#P6?Z+2</9-7E:(5
M2^"(3]732'#0XL*G(AU@;JER_8L/-<'8]3P> ]L#ZE$0X2:@'VED,3\3"7;0
MS/*68W6,!*N+< 9<<C$'EC78%)I@QZ(H3[GN7R+1?3\:4^'BG$L:8L>A3+9R
M-+Y'@L:"6>/PB$/KI2[(1=-8Q@<(E:941/,K"(TB&.W42#=5X93>!QE)T*)B
M%A3WP/"><_^6!8$&D.6?T2K_7@#<H\!%"+.T$8.H82$+V,;9G1?$*DM@ <&)
M%"U ;H+C'C3.60BB7[(9]5?%>2^XU TG5K*:0:MBDWE([>K /3(9^(<@/YXH
M'*C?G7 1L?\E2JP.L*ZCIP>Y5F4.(U^[1BNX9.2&!2QBU!*7ES2L><I]1>9J
M_NDVV5YI7+,!ZK5>-M=>%12W7P&N14Q]9\/2MV\*2#IQ<0>].8[MKSPB+,I
M<-<^EK>D#Y,E$#H<75(B:<;__",//7-ZQ$J'&RD'N7&_-I_(W6D,XWWH_\)O
M8-B/^L/CH\ZK3X*$DBF>H<$Y%[EX #X!V^$9$2'(+=VQWLFC<)O';K2+>U+<
MHT,*C/H@6DX[61P*JEB--5<_:\QG\WYQV\H6](9[PIT)>!%Z?$*+8NK3AS:J
M9H"JE;D<LA^00);C%@SP.N+>ES$/@$6I\J'1W!YIE9/A <THEB8FPQZ,.>/T
M-) I:X4[Z#KEDPD/$[Z-=1&KS6H&QPV.=>%PORVYX"M9^53U>8*.*41H,[KP
MVY=<RA,ZA- ,/'A'/_&OV$\CX'R >G"_?%W?9PO6K@B#@?F43%E$@IS9Z@"V
M$S8#40<%X)YB#&A$6$C];):4LU$(N)C'=,&D V$C('110(7)P$^'J_)>PN?'
MK3U=-I7]X<*M/$(!:LE#L56AEK!84U6!6@4$)H?:MRO?HC;/,*-A3,_AG0(E
M1H)XT6<6C4]C&8'FQ')93,V8X9^:;&M=1?6>:O8=)0@5G<8#=(,[=COE,NH/
M58XDF2Y0,6,>E=?@/K4AM98 -W@F29&OR2YSY/?1HFTU(->R9E@,S!<JEO+H
MX7YGKFD0J+<\]#\0\84JV<[NIA#/ZZ:A!H)F@&.2&/F[,Z"2@D;4QH(>N.^
M)S6(9KS,-,V S"*WP_2D3M3>TQ"D5#G[KC]A(9.1DGE&S;C9J)J!G%5VAWE)
MG=C=2Y<%2BR,0>I4?(C,%ZF.94:?RK,[D!'D8"$1\PM0H%2K=2K$XHGCN0@C
M*JC4;]+8W1-KKTS;N3)+5^/S)HI[-$YR:IE,RMNQ&?-IF"X8Z>(D,]%7!KI%
M@[BSD0,^)T$T7S +0O/,A'6#N[;]UX6Z06^X<Y>)N>897HA@#@TL1%\7]#8-
MXJZ"6$P2#9/@7(.:<5UGM;@'9(>HXQZTER*E-G<",:\^+:IKW0!T2T1$/F$N
M69[\2*/^4)_H-5'4#)&#,"M[%I>(XGZ!3"O):07DHO#9FR>UDL1+]![ZR:<4
M!?\_L8S2+9DF@'?TL&;9QJXT7B&ZQK#*"+_[RIT5EM74D1WG ;]]A 5'\_.Q
MK3V:N:W'=:CS.8 #X%A-\_R3^:]2E5<NI_Y=,-R9:1M(A0[V(:+-"U5'HYD#
M5H^"X_28:=]HH4FC82D*BSM_DM^=J@HDG+826(@:#9Y-(;BS(XG0ZLQ%B$EZ
M/+Z)AG&0[1O5.T,]2:.A-"L#=YJCN#%NH/CI#T'ZQ SS-FI)?%7MIM& 5U<:
M[NTC[PD+U>C>#WM,3OEBRUM_:/3-9II&PVM11SF6/V+)K*QM97)*?MFH&@VH
M527ED+Y"\GI>CXF@)^!I?)48 ,9-X:VF<:/QTRF@'+;72& [N_.HE&!MJ9FI
M]'NY).Z3XLWZ;+01;*C.<EMY@\5K@VL2*ICHT<7/BW#]R%/]NH6=M-'0NRE'
MDYDXP@MQDNR]%T'WTCL0/C%XUQ6C ;>#%]SLF%R],S?3/#%("^K0H(EF=7*=
M_2M!IX3Y6229!I#=T,^=PNL,LU-G3PQ_-P5J# --Q;!^)$I/2ZL\1F=T3PSN
M-;5HD,62!RN58.6$M2K8KI(^/7C7E*-!&$N2:^,SGE:S!QISV/YS&FT[.U"[
MQM!^1&)H2EDKMXL,J(P$\]12_>+VD>(7N9975##NK[]PZ9Y/F 2/23BB U#4
MV7!(/5T^[Y&9J+O(IA:5Y\V\RDN">PE=(XF*W^4FA1ME'>S-IH*R<2_P:R0Y
M9R$)O0W,IJR#O=E44#;N0H*%C/UA7NY^6'Y'ERXG7J6+K]YTJBD<=_$"3"Z3
M8L=/O.L!UX)J;X/1U:2X=X S"#>,RH4*E0J*<HA.ZLS K(GB6$MFIWM:"+M6
ME*')N8+@'J5^LDOI0LI8W>G9']J/>[/3X036$!FM%)?9U()[/I%9)DSK!W0:
M"QAVI!NP=L)F(^N@&.SO;"I"?YCMYK:YWWS+)X%>0?0JYYWL;)M-CTDOX#(6
M]"./:.=:J4+,^\-K-@K9D'EJQ%]DYT'(*QXP#T3,LFT08R9%%>KJ<#\.P!X_
M)XQ3OSNC@HSHQWAR0P7TIEK)GCK@,'CP'=1UL/HHFW?J$*P>%Z!AK<>"6)V*
MF'#8CR-U3[JO/RZA:B\U^3LC#CG^3HAD7C51-7W4[",?B&[>45;4&>Y@IE08
MG3;N]V%6,06'WIZH4;CH$<,^UJ)S/U[X7PC<8$)-6'A" A6C7X\IS7R\O/?D
MV3=9X4.NR&FK8^G6N:IAV-RZ#/5>'%C"6/X2^U(/X49;\XV(]TPEQVNZ2:0A
MJOLJW2I8E5V:J-,%[F$M.]#EGGO'RC8+65/1M.L#]V)<-PCXK?*5)3L2[V6R
MO*B5^F@JTA4UA7""7VV4S,IPYZE(-08=.E;01QHZQNORW2DW^KO9"DUJ&V)2
M'M1MUA)4F9R1GAQ0HPX1%C-#?:6=LO:3]=8Q*(XG#L)C#Q%2$3YS\465<W.U
M'<L&6;%Q4U!:$1'W6+_D>D!N/Q"(6Q@)K+@4VC8%EJ* %>I:4([$RA5$])+-
MZ-J-H34.R@Y<H1^?'62HYU4U,);,%C5OK96L)L^3X^L*WLO068I"ZYJ]CRLF
M>8^D%1SW$)YC.SG/=3*E$>V.!%T<&><(GIZTV4@:5(([ ,C)\$D0GTZ(^.(*
MYBI!LR%<$Q]W[6N.\^QRKP%=:%R.V=050P-ML^$T*05W86J2@WK@:.]&VT!D
M'96RHZ.RUD/E(0OR<@SH2&D1YAG=Z53P&4PRNJ&?GKBJXLZD;B.QPS+X-NVM
M08!NK#B'$[1PN.555>A3;!8BO.AJ)MT/?4\1QKJK_.>VFN;/ZJL.K*ZCIP2V
M5EE5*E-1YE_2+>SIKN*:JR_*.$&?9]'P75LQPLJ)!-8Z!$W[^JHI%$.Y:UB<
M!"AI7_]:K!F)E;H)G=2X!Y@S\ Q\3FDR.:E@=W:Z)L'GH 7<R9-+8':4J"1=
MB#.CIVW>)-#T,N/.ERP*<"KZ>0M1DW"SR5\A)_)($=GWV3[3_!93[=[3K89@
M#WMT#3'7PQBM;8]F.5NFA):%J"['3T)?Y^35G^J_]<U!TP6OG@B$.V@ZB5F@
M*OI5@NABHI)%]J4G,TWC8+*H '>T](%X8Q92,7=]]PT$C4/.)#SRP,ET7X4N
M;C+2- X\BPIP+R>IN]XB$2=7_25U:2-!I=%IFB@:AYU1?-PWJVB%U:\D&$FP
M8J=)+-NPQAVMY'+?^:O6X/> )FH/"SGQJH</;:W[AAG%]M2*< VBVFSN9'[)
MO53ZVN:^ZTR@GP6OLXS,O>_GP[5'#?OY<"-@VL^']_/A_7QX/Q_>SX?W\^']
M?!AUM+*?#^_GPU7G=:]RE3WWE6/9+5#P=5IF&.97M+<Z&=Z(@QIFPAOQ6X]C
MR#%GORY)T[CFVY*7>EWN-K:SOTI0L]\QHU!V'W*9T,B/_UYC'7Y9N5,N.U%!
M^4U5+*/V(QA.>7'%>?,'-=<^MJ!DY"<9/U!DUSOBMM;]4[<AYWOE-K\2LGQ'
M6+F$^<!L)1XKV0=6O0_TL#Y0-?A*$LO#*W5]. \7YWFO7CB7WC?^"$%I!2[0
M!*85>*[K?)Q2IC2.6M>ZKDS7HK:WF@P6HMJ/^S'*4DAT6:3?4;K$/#!8K@$U
M-L6O>K.D^$Y?+G=*BTNNV(PN_ZJNN1I0CX<>#%O;7W'?G TT#KT*TWN/_G#F
MBQK5<-F-SBF\8R2XCD@4JQEZ 16;R%MY!GZGM2/=XL[&:X15PJC3BE6!3)![
MP:N9BK:7QAN#7C^X2PTTXJ2791<LM\? A:O B2DYJL!N[:WQ\-OUA;MT02-6
MC_J+]6#YCY@$;,AH=@"+@L=V]>Z&G3;>*)RUYY#.J#.)Z1*ZP9>G<;)\] N_
MD5UU%>SQ4>?5)T%"R=(&_3"W)IF^,=GE5-V)2NAJ#.D1&6B.T3TF*H]Z>):&
MZ?<!OU%#:W:0S"6_52-L.IUTF#YOIU_\!K)%'>[H1*URW._O8_K$2W+"JRNG
M3B3-0,LN>3D0K[",$)H!<'&RP%*XBG'"&C5^,"OKHQS7U^@R7XLO3^B0BWLW
MT8,?,F(>>)ETW'B$Y%=%3M#DORKR7>=[?,EE<B_T*5?WB,80"*1EO1#)K@A
MY=E=) C8+0N)F%_ RR.3$X_#"+0##(ZR.X^,[_YNGEBK,ZPD4F8'VU/2LD<4
M3G.G%K7N>!^H^R8DYBJ)EOJ4[5E5UN'>J%PUOX6EK?1[]=\-D?3G9_\'4$L#
M!!0    ( +E^>52<GO0AM!@  /Z? 0 5    =71M9"TR,#(Q,3(S,5]D968N
M>&UL[5UI<^.VEOV<_ I/W@?/5,5[N]/=E<XK69)[/.-%XR5Y,U-3*9J$)+Q0
MA * MI5?/P 7B2();@*)JVY5I=(RB>7<>RZQ7"SWY[^_S=R]%T09)M[G_9/#
MX_T]Y-G$P=[D\SYFY.##A_./!R?[?__E^Y__Y>!@;T2)X]O(V7M>[ T'7WKW
MS,<<[3$RYJ\613_N]9P7RY,)^F0V]SFB>U>>1UXL+BI@/XH_[,,?Q;OY@N+)
ME._]:__?]DZ/CS\<G!Z?GN[][VCTC__\>#NX/ON/__GMUR\?/@XN__VW_SO<
M>WU]/43.Q*)!;8<VF>T=' A$+O;^^"3_]VPQM"=$\=CG'Z:<SS\='<D\;\_4
M/21T<B2J.#N*$_[P_7??!6D_O3&\EO[U+$Y]<O2/F^L'>XIFU@'V&)<R!?D8
M_L2"Q]?$#H2J4.&>,H7\ZR!.=B ?'9R<'IR='+XQ9P5SC-VU6GQN36?(D7H0
MQ9R>G)R>G:Q2R^+J:2&3(]+#R<>/'X^"MXG$HC"'+U,GRSX_"E^N)\8%6)::
M_>7[[T(R+6I3XJ)[--Z+?C[=7V5KPQX_<O#L*$IS9+GN#WL!TD]\,4>??V!X
M-G=1_&Q*T5@)(X8MU7\N%?\W6=K1II"F @>U_6=T()XB3WY@&B'FE;XQY&51
M!PX:6[[+-0+.EJT3+IE96*=Z,T5O#C8HYV"&9L^(ZD2Z5NX*9HPQ#5#5?AP%
M*+%#?Q\0VQ?2\_C?GN<,/8[YXLH;$SH+&KUR 7P^<P[BP@.DE<M>"2%,!7M8
M/KP6?Z[5B=XX\ASDQ+5*^+J%U*'-!VYQ)&MX$LEND(-MRPT[4<Y$9]@7O2)Q
ML2,2.1>6*QO#ARE"G#75<./ZNM"Z!G#=,S$2XQJ/3Q&7&;JF9;URR!RID'9"
MV#(INQN+5V2&.B JIU)@!!4B-$1,UY]3&0+PE('YL!XXL?^8$M<1T\7AGV(F
MMNB8OAP @-G+02O 1FA=8B<A[KMR-DGH?E)Y^Q(ABP>58XL]!\- GQU,+&L>
M #U"+F?QDT#/!\<GT?SQ;]'C%?Y'Z]E%<16N]8S<S_N*1$>&H88*DSX$XDEU
M]MXP*T.>FR<AR,I">G1=)#%(CPN/QNNA1#7G=W$98TIF2LW&%9.J$NSY3, A
M<PG<<O?W"!46%?EJPMG )YMX7!CYT U*^;S/T$3^,,5B2HQ!,$51L)>?MC76
MTA.[$LJ*S##)H$)B-7/;RLSO)YUP$[H(VB1'"+)]'Y:084:\H&.Y"2;\"NJR
MZ=HC+>E_R">LT.B21.6(!^X+ZCD.#M&,+.Q<>7UKCKGE%M)1G&<KJ"D1.Y^F
M4W,T29$HFLKVY 6%X^BR+T:1?BOH*1 WGYHS<]3<(RZD0,[0HA[V)JR0%T7B
MK2!%)6@^(^_,,;+L4<7,"5V)GZ5#[57"UIBP7+>D_\^@S1U31Z/N2,O'A^>K
MSMTE##F?]SGU46F/GV+-&%/I.:7XV%U?+M>." U4SSG%SV)"*Z1^)+?$DP()
MA0HLDRLA&D6,*]G54KC);[.J;>C1(KC!R</4$LCN?"Z75:4X*J8SZ;: M*QL
MX$8=@6%=,>8C9^!3:4Z(8N+\:KD^"M[=!6#9\ U1&XO&I^A+K%7.%O!77S?@
MABX*&4+3U$!P44%;RW"A=O2-A;*>YC%VDU/*>V0C,3IV>IXC1F:8(N=)C.!B
M+)&_-D*8HFV3DN#RMI%^\HD[-TU<:&SZZ(O*^RI)C'653^5[DSZ6?_J,!\LH
MCT3A>7BTWH;C,;+YI5!6(,F%)5H4.2T3L^!@_X;2&Z.G=+@VH5V/^1;RD^&.
M.#3CD6L)^Y9@U4M;N8GA\Z>2,I^.#X;IN$=SG]I3:3VKUB<SU"OBJ&()6T)<
M57WDL_D1.INY/6VC(KX6/HO[TY-C<XS>\2FB.3[B:\+8):$(3[R^3RGR[,4C
MM42S;P<4>$[PEQOT JO.Y!;QN['H-Q3<MU09?"MI2\L*>S+H9QK@%^P@SV&)
MD6??8E.%12B3P^=4+:F"%8/>IQ$E8\REM2EX2"2 K_FD- I=QYZ@GX]2@HB"
M_^AVGYSX[<C!V=H.,&DHERYY[6";7'']P';)506[P1D&S.3JCD_1+>'HY,&?
MS2RZ$--?T0;CL8#F\9YM$]_C@<_?Q39&C;?<-ZNLDU,.&R+31<#I0"Z%NH)D
M1.6::'+C> 1 D_8KU=2]ZFO"TJ7WL__R+<H1=1?WB/FN_,SNYHB&AS&?/,MW
M,%])N)GF*];5O>YK ].E_7>B^1,5\84\7/2GC^>RI=.C[/RBN]=M&0Y=JCR_
M)M[D$='9 #UK4N%ZD=VK3E6_+I6]ER-6''K_!#NBSY6-O)A\:.OI"FOH7J$5
MX>C2[T_AY$[,T'3I<ZW$[O6GJ%Z7OCY$JPYZ=+4LK7L]Y52M2T<?OR RH=9\
MBFT=AVVKE-V]_DJ!:!OV'Z]JDHWM=; PQAB2$Q+-VJU8EX%!?UU@VK1_<H]>
MD.<C=K&(YH%],=N;$+H(W*<3?;JO4I,!S=>#I4WOIU%E#Y:+1$6CR&F=Z!TU
MJ;U"10:T7@N5-J6?#842R0*A"^0)2;E<K].EY_RR#:BV#(@V;;Z[1H(R7?J+
M2S.@L6S5VG1TWF=8/ KWJ4KG[82BP)<66_PJO28]UJG1@*Z;P=/&Q_MXF_\(
MT6 E4)/6L^4:T&T1"&T:_$EN7EKS2%+BB9\VTMEKE=5B0+O5(6G3]8<'_YFA
M/WUYC/)%HW:SY1K09Q&(CM<4GN2FNR'C6(RSD1AQ/T[1B**Y%;H?[\:7V+,\
M&UON:BG$R'+$)CC!KF3H$:ICBQE1+# )KN6:V'+13&X!,V$7Y6C LE\'>L<<
MR[5.Z:(4_TBO^8N8JICZ\$N@@&6W,NZNJ26>[,OC)J9/D8/Y/69_F&&W% U<
M@FM [YCC>,4VW&POSP@:(;< !EA6*V'NF,XK3PX2"95]A@D>\^H'2V QV,['
M2MG59T/#I (@8+FLB+IC4E.K%$;X5&$ 2V4YX,X;56YY$RP:>(,T*D& Y;$"
MXHZ)#+8\9\Z$&:&S! I84BOC[IC::'U2C,7()%27$5H+8("EM!+FSIO<Y?X=
M0ZUMMGZP!!:#[7K(@R:6VR?,U&@G6SU8W@JQ=DQ;>E',"'E*$& IK("X\WDD
M8F+N$[F:Y,X1N8/T <^P:U%S#6H-6&#);B1#Q_0GSE_>C==/:IKR"56$!);V
MVOB[VD5PBUY5KP)4"\UT:X,#;U]"$^R&>V@9T<WQ770W_@W)^'/(Z;T@:DW0
MK2_/JXK2@C/\P9V19KOQ>DC!M@.ZQ-)E-U4.XJTPQD]$CQ4<[E^M6F@U$=V@
M8)YO;":!&>+C58Y%V&=Q<VPKD$"GN!2V&5Z_$.*\8M<UQV<* 70>E7#-\'<I
M582"A8ZTI]P<I>6@H+-<1P)C/3'UD1-=@6:V]\T! IW@,M2Z2*UVUGZ9:+D!
M,W$432>U^N! O;:@'G9=-.<>^X^?R5-!//E")Z.-:@9R+T)UF&9XNEC$,<W-
M,9;! )V[ L"Z6$P>S%\UZ0,T1F)H[8C'84\M4%UCZQF[0D=Z>\A- )B]QZ Y
MVG;)ZR^#EL51/N4]O&'O'!VN;)_ ZB"@D-@$<;M$AG<G+Z]Z%&_O+1YL"Q"=
ML8NUMZ8;HX!"92/([7(9/KQ 8ORT0C40_S".;=%<1,L8[=-9#P@41INBUD5J
M?"_+"E'^=>;)*_![T@0Q7^CD5 ,.<Y?:: '=!:,C:R&'7[U7BSI)4/)2[? F
M7<;\6?BL*W8;8(+%]$8"=/X=!RM%/9]/"<5_(>=)J(BFKLQG%XLX]L6(8AO=
M6]X$&?G8-P0+RT[:D4R7 >5?,)7P:>>]UFD4FP" <A]77;3:%O8KW5>U0I=*
M<[%89>]19&E=R6\%&M0KP9K+H<T4*ER@E3!3ESQ;KC*'5D-H 1C,^\F:2V'&
M".Y\!M "*J""3G\M$;1Q'UV?M>X56*Z#B%9)OF[)Z=FT<G.WC#5'JINP:R1Z
M"I1?_^+&XC[5/.=N4K$YHIJAU$92YC*OA%<N]4:,]@/?S0"[/I?.<XV4;0P#
MPCUHS3%WO!,V;U$KW$)@_J1\C /L+M8BT&9B_:3#VX=59**PK24R%Y9(M73Z
M*"KOO>&">$6E.5L+9#05.:GM/Z,#\52&\UH%%%6$,UJC(A7*J%P#ZF#R>Q*C
MPS_)&/3"^H=N4-OG?88F\@<X7J5,@R ,5%U>$SG;"U 5LWG@K&%<)[6&T59B
M.JD3-=-?(Y._GW3")1I;OLN[)E,(MWT?[H6/74?T;D*D^.?5;$[)2WAVYV8M
M=%N*\&IY34:7JV',2;(K*@7<M[L4KY"V=*HM)"@C:#X5^N(O,LH3-(B_TA2(
M1[\'*QDY0YCU=Y '*2DIU%KMIC6KKO5<@T^_-32,R#6--6UWU:#HU:?!SKRJ
M2B%TR964?B-T-_-G2K6OOS?18BM,(U9Z2@ 0EGQCO14K=>T]1*6N"]!V)]?<
M\7"=#MZK<CZL$K:F;LMU-POOOMXY1EH^/CQ?M1<N8<CYO,^ICTH;D11KT&9U
M3PR-??<:CU5^HRHY38X@*P>0+I>_N-%J*["TEJL!37AO51C >FY5@+\UK^UN
M,@-V'+B;S.PF,[O)C/%Q]VXRLT63F>R09HQ=.4)81G^[E[<+L9XM!GTLU$2V
M7ZN6!W)_5U'J[IQZ#8C)76"JFLM0EUC+VBH1I7]QL&,J#/:F;;'1;>^;SU>?
MR%FLF/5,Q S'O?+LW-Z@**6)?J&FI<6<*(4%M^RV<X-MBQM,?;=1J1^L4E;X
MCK!J&FB[XUF_!'8Q?+.G<N H3WTG+HO]<C'BY.EAD-.^U2P +B]-M-'VT+D:
MGM[38#-VE@5\#>RLM)'/SIFY[JG@0K?>C%"._PHDB*[.N!6M]^,K<E_0C6C*
MIZJN;,-"X5*N2VOY9O!N6\S@OY%%'U^)%O;CLKXVTI<ZRN?Z?*NX%O77'_H4
ME_95\AWJ*9_Q]]O$^"7Q53L$&Q;V-?(=:BF?[I^VBFZ15A_=LK"ODNY 2_ET
M?S!-MYLKB/2C4.2<%));DG5;J"S30#YQ'R'NX,B/ VAB'T<Q$K"[.:K"[GQG
MSO(Z-#.;<C+5@V6P$&O'M*U"R9E@+5L[6-**H';,6<-X,B8(WA J6&O0)I<N
MT]$6?$:KE6A'M04Q!JJ+8(;[=%0:@X2KH$!GN1RW&6KC0#4&*4U#@$ZE&J\9
M"@NF[@99K8 *.M&U1##6*R<#U)CMB?.00.>X%+8N7C7$I='*KD8\6QGDISVF
MZP5"T4IJLZJAQXJ!0M4J9HU!TK(@H-.71;P[199S:F%9\^J:8,M5G"I3IX6\
MZ[Y$RJTXL/,05IE$G[O[NSBMP1-II6:V9$HM*8A3/EJ8,'R6;7,R(.RU?SI\
M.!0-?M_R+,=2[K//2V7J[%6I[<0[&G-%:WO+[]";B#[4$?7V?,:IY6*U5M5I
MP>NV0,R6KN]@R#Z<D)>C8!)(%V$;$_T1T!!0$#WX_6J8TG?B!6CE)@4 M\5V
M=P)D6TZ 7(N/4\%-\ K^3IA0 G"'H.*+$N623_*RQ"^4,-774)P'/A4E,H.[
MK^G&LJ="'KHVQ2TBJ" #?':*I 77@ZP'  B.2-Z-GUCHF5>P4YP'/D$E,H,[
M0=$GGAC2^;9$=.6-J!BN(%;8P!7E@,]/H;S@SCPH775%!)5D@L]1F=3@#BKT
M;-N?^:Z0S1F@.44VCKRH<Q<%VA4SI\3>;*5\"D*U%0^?>GV:!'>\08GU5MD9
M%F:!3V:QQ,4'$KK9UWXN0_\](CH;H&>]"WRY)7>_ %0"0Y<>W_?);(9Y,%&0
M7C@2;*A$GMQ.J56M52KJ7LOU4.E2>GZ4\@$:(TIE/*:WZ"B)YR1"HVEE8R,$
MW=.D"6Z[_,F#'\23EA1'G!<)HETO%\@3JM+;4&V, @J/C2"WR^5P/$8RACQ:
MOI4W+*R',>R S#HPH+#9#'.[=(8/+]"8T!6L@?B'\2 27G2K1@>,UD0"A=3&
ML'7Q&L=\UTI1NM#NM:U&H%MQ*R[C&)#K1Q6# XQ1VI[\?C%?M*+L38"8(V@3
MU-_:7JSF4.4\DR]6XX&""(S%>2#OT:HHM>F]6K593(E1&)TO/ZVA/5NUS# =
M^"M'8G"KH1LS R!2HAYR(-Q:WF"E9S:+>IC"4'K9="8]C85&M[ZPDQ$/W!>T
MVU*S+5MJ\H=G/4KE-8GA7OE5DI&UD(]ZKQ9UHL';%Y&0LRMOA"@FJLTYFBN!
MOR"@6ZMM[^\<46RCX/K_^"Z   %*$UJ<%BXO)3*"V^NSJ?T,W^8X.GO6\J>9
M5Q-<.VA5O_JV)57]2 ,8%3_2."U<<DID!+>C*!B"73'F(V?@4WFO2F (X24I
M20?'\$W,@3'+$+5!07!9W$0[^K8E5?^"\JDI2PU7_Z5R@MM4M&EC?.=SQBU/
M[N4-+RIJJ:O+U@/7"EK4K;[]1E4_T@2(2I]I,CU<BBK("NXJT\W'34$S)"?0
MK7ZJV7K@VD&+NBV^4;6-3_61<,M-(*GTO68RP26KJM2*"?MQIYO^BA;CD@:4
M'(W]:KE^:'ABZ#9K<1%9%RA8:YR;2=#Y(G8P&._Y?$HH_@LY3T)'- %;[F=E
M%XMX\+@R?#,KW9NBA64J6D7[UM;,Z]U?\F CSQ*SS[*[2];205X3+Y#.]')=
M-68BR$\>FR,;CS%RU#=E*--"N+,DS[26#*FEA'%?B0X6H-Q7TH@("'>5!.WX
MB?(ZC;77QBYY*+.4>&R\+DS;RU9!;:?%JCO=*M6=MGS?R&Y)_UM=TJ\TQ,P.
M,*_)*Z+A+SS#JO-[K58)UQO0C<;A[>[1*>[3?-ZU@:6K_,8,+*-Q>'V-3G'C
MX!4)SWHT*^_"U@IJ_\;,KHB'MK=.I.*9W".I( % 'F"EELU]*XB=+8/(I:VB
M=G:XM-;7!+P]%]+VGC599-824]I9RW*!)MB3JHJN;U?%[ ,%$:XQ@E07O(MQ
M6FF"$TM5!KK"G-JWQ$R[X 'F]AQ='VA6XJ(/M),FMBZD+;%58XP5[P_J9N7[
MX^HZVD2 C43 I+S76A<U-T+0_4*E)KBZ^#LY7E4H+_8)(AZ%EY;DPDNEN5BL
MLO<HLO0&C6P'FX$HD6T+HLT:3N[1"_)\).H<4>+X-N^+=G!"@MM![\4H;LU4
M7?)LN<H<>FVA#60&+*$-,79;$G8A578A578A5<PS 66+PE:'5 E;?>5:^]IK
MT+$HLL* L/2H%[VC#XB^B)F4HE/(30:]/\B73;WL!*@KB*#+NQ(C\$S9 *G3
M&NP*BNPJQ4^>D)"^C<U(,-P+;,0#A [@[IEQQ"FVF;(3R"0QU1&4&DS<$62%
M:GO/VI>%AVSBDLE"\&1S*B=A$T073S1XJ.Y@*^4#K_"*XNO;DI#/PBT2!?."
M\4PJ 7B]I@5J>T7]PB7$&<F0$CY%-T0HA,A#WC)ZFBU ,O$74C<4=7*#5WTM
M5<!;4=_MZ]R2?9V1Q^U2*"3>K?$;YM.^SSB9(3I\LUU?KGQ+]ZSX3][SK:"R
M24GPE[T:Z:>XN^]FM:J>^_7.9Q"=VU5@0?=L5Y%AY];>N;5W;NV=6]L\$SNW
MM@ZOAE_@SO!-ST$J.[038H P\)TW>^?-WGFS=][LG3=[Y\W>>;-WWNR=-WM;
M5+_S9N^\V3MO]LZ;W=SE>AJU-0^6BT1S,_*I/;482H2.U>NFKEZ? ?]S$W#:
MF#@;"I62!8K#@@9'?/0JO[ * _JNB$>;BM]=(T&G9J6F"C6@1B4"W8I;#W1Z
M-[Z;(QE8P9L$K]N*Y]RX=G-4; !5-V?7LL-!^0 6-Q;WJ>Y@F(UJ-L=50YC:
M>#KO,RP><8J?_6!@,Z$H&''$W<\JO5Z:&E1L@*4&*+_>5=_\"7%2/??RN"_K
MV7_ZF(7CY*PSOUH>R)[]BE*;]EL60LQU(U?-9<BK7\O:*A&EW]G?,14&??MM
ML0'!Y=\G1+02TD,KUU&O/%OIT%.E-.$UJ&EI,2=*8>'=)KASV6V)R^Y2*ABY
M\@J *X];W@0+X<++  )[I,A1W=A2*2M\IUPU#;1^[7%\:5MP2YN\1LAV?29
M/3UD6XI+0B_1S)9WOUR*D>P4H[Z+YP\+)F3,:?KTE0V73<TZ+%[=Z\CI^GYH
M42D.BV/2K':UIM]<6 S;/<\98-?GR-$[ ]P<AX$)H4[0:49C<\XTNP$8A)S9
MT5 *PV13,O3\&0H#BUX+*UQ9;?"QA*0T;MIEA2S=MDL ^R4J7_LL-<@1D[=O
MIAOKV;;H<YV$RZSO4QITL[E]ESJ]H7Y8 "*^Q]G(6LCA12]8FLV'V'MFP=*1
M6K3:)96TZSJ;\0T$3?;:I80G^J)XI&:*V]H4PF#JFR"D.A.&*?@:=>^%\=2F
MQ!68V% ,MOFB!B&%V0VQ5$6D;:6NQ5E]]].^;5+\B$K'#U_(A6\N3$R:U5Q*
M>(M4WTEA%H!BE'SVE;)V:&-U1$E:714F 1E>Z :Y)9Y=;>BI2M[E^+($\M:S
M48D#<YIO6=\P.H]-!%$XCZ+'\G_RFN=?OO]_4$L#!!0    ( +E^>51ARO(
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
M1T00(HR2==.EC@[*.-,>E!&QQ;@Y3;D;\)_"IWCN)C?+3Q^/O^73LP>S,VO
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
MQ(%YZ\@(#&8=/008PCHR-@[=.DK:;+:..D0>0FV,FSR%/XU<+Z;Q92"2NSZ
MU\8E[.*#V'.;*GZ.0GJRRA@]](-RJ,07QKC95<+(>.8I>CC7,U*P+&ZM+3'
M*8;)6$F,OC@><7I@.[@HA8P26;5R&M=7-&QOCS7$5DZ0;OK0>>8:27CW,\LJ
M&FHKHHQ/O3$9$53@H_3J^?XEVS]Y$9A#@RNEHC$63LT\H&;B](F?1?*8-(?]
MCT0\7 V6/5Y!S3)0-:NCC"B-,3$1&;T+R]2(?^STJ)DH:#W^3,4^2R&\$CGC
MT<[FA!HPQKE>%X>U;^BJ\OI8Y@Y 'W-74? G97#/DE$%"]W$)=C>T&M_G!1&
M#)\!?Z\00!;2#_<-5UHI3"99C>,45UE@&QC_<6^.X]#W%MP4;]E?[K8-X8V/
M&+A';N4'>605N-X&COKYV;]$S3)<ZFBBYFI9;VA&1-@U32!L_38*H6[BXF3[
M&,/Z_I(7ZX$\E%"]G%O$_"GFBU$%[GITA$5C?][14?Y+/WR-"4""K0XR<L0I
MZ%D&UOZ**D,8.<I69 NXHR[U7GHE#) >'2YG0)4_(VD#HJ+;4;(&=)1"LYY3
M)V'LRAY058A^ @$%[D8TI[MPZ_C)5IS\7(=!D>1-84/J]EC#:>4$8RU9YUDD
MJ AKL3">I54'96CI#<>XI\'I.O7!V+G# YQW1_29!C';KN_"5T\HVXG"2:,J
MU73W?@R<'O?C'#F+YT1)"%1YIHN"+/'MJWG06T\UA\Z((1X[S\ISZ#,]QY"O
M.-FVK)D;'C"2;Z61%W3.E:SW7SB;,/X=H9R(91ALUT)MOI7V(1DJ?DM$CEUX
MT?JR[(52_1T5L55'"35#99%\T".YM*6*H%+4O>@LI5:'#M-3Q'/N_VXD,,]4
MU.8N(L^R,,U:26MC\,8*QA3Q6_""BC:AR"S)@]=/1?W*TW!1'C7=I_#!>%I<
M&0C*VZ,S$\D*(&M!1HT .8M U$$YU4@]_3$;"'!GV2T9E$BH0=;>SQ@(U=%!
MQ;]E_1'HT"(TU,DI#[M2H;84H\@\A.*SE,Z7"8V@</H%6S0KEJ/]^AJT($6;
M!!C8Z92D2$+R1 ED/9T1!Q@@P $!%BP!JA$U=JI3H86$*7*I[;/9[%W6\I"Q
M#&N-/&'0VX1:.[W-]'2BS&G6/E#]'87J\'X11K=.]"-\#!.YDCS_-3>".RH*
M8IV_T&@+5@#6$'/_S)O@]!G\-B^#T]O+$E9&(HIQ3AI/)_A)O#R'$\8HR3@E
MC%6IH")Y"+,V.;LDYY=PAOGDSJ?YF'">R4U !-=L.4L8WX8<I>Q2,#Y4;XJA
M."P_K?%&7/;P&GF>0<S"^\4T+H/+B#(,UH5C*9NB9KP6^JAY"DJIB!J2CO"[
M\@*2]6]J/C' OH%9H$'0&3@QLS;[QKI@_[7*2EOTN&=;.C@\A!BL"\>+>'@(
M$R1=Y]$D&^I"LL709]W JNN.#97J+F,$RI-%8'77SL0!6,!PEA-48AGBL033
M9,<U ;8M,;\)!LI8"%9/'!_"Y)!%E_'XTB*TS/0\4$]DZJ#+>IEM":\4W,FQ
ME9"5G[UAV?IN2;TDC:SS11QF0$P'4C:@</02['Q]<1T&O+9)0N>KB'(1&)/J
M6#>M1\V48-?C#V,R60EV48EP1XGL2($IV.<"TT4_]478.PS@N,Y;);=$SDYK
M/&_30P;<LC1X,N))NR,Q(T_<ZXC,?3]\=1@@>*&W4[9G]A("7DFV'L;JJ:O&
M%4MW#/%1F^%RY8=/CA_1%QJD-'[:;J)PD;H);!M78:0,A>G9B8E(SNX\&XOI
MY'09-@5AJ-1Z*TB3TXRVX0#/860=,M2S746'=9[8?R3J(D![FDI_0]\%G%:.
M4;1BM+L]CS'O7IQB+)M7JCW^2([D^.1J.6;ST=N#26K8KKLKZ+!,N]<XR%;=
MWSC&K:!2=N5F&]B;Y8/SIEA%-CUAH()*&S<8F^:Y>$I^^\8+I1F2H;%@6B]!
MI@G2;55&3=D7+7R-Z=_2$/1PP38?WBH0"W!W^Q Y02P2QLR#!?_DBY./XHJO
MQ;X&(H;VIQE4!ZBS"4&=N!EYDNPH$J<@:;(6XN2Z:*D,VJB20!Q0)I \"O[X
MMX]P?.GX?O82MNT,9UAM5[R=AC>_<6.P19ZPK&SQ"0WHTE,=$*E:&XBT;N("
MEZ\B?/%B@#4<^V1!HP+:(G3TVZ;(T0D$:7ROXZ29*-JZ22,U =:M"!O(-_^>
MLMG02[;'GYX>O*22>J"V"<9'7T4/M8"%CF#./O[T[NEKDI.P!!--4LM>^XUJ
M'C04:+Y80&D#'AIR$W%K"RH#V-H<'_S3S(>!J)^,@!3ODQ.Q""LZNJ@&^6@,
MRJ 8NE^SI=))&GL!K=S]J5KA$5-+U0!0>+\D[]@Z<-2*7<6$6MO]ST9OGN*$
M)I'GJNL!59I@3CA5]% A"D6?A@XG,4QV/'_<D3JL<T.5BN2CP4;@3.Z/Q+^-
MYVGR'$;>3W3Q&##M\;!\X9L!!=^*1->[)/C7*8ARL[Q)DSAQV# %J\R7HY.C
MDGGJPW@P#:8E4ZY-A<O2SN<F=US:I867BS?,A,=33"3>+#&LB89"SZEI6,3V
M?X-)"3:EO)IG,,VZGI,=6\S7891X/]551.S7!^8=V)MC5/"SG))5(DMDNJ(H
MG$39T MU&(GU<KG]$PIN+(BBGVX.([RBM^KE)0QN8I@L./G.6STG-\O'F/*[
M6+Z+!*3<+"^\P D8Z_YM&'O \/E; @? 3SZ]\F*]*.;^O9L-=T9+:30NFG-S
M%"Z/&#_"+2 [E^#+$_"5SIDB.5>66,M VFV.L#8#(ELLK(_=#&L-)C!>A?0A
M(;87#B>]?)=\L2_9:SU8 >:%-TV3#[[>LT:NQG4Y1,VL/._DGB_^CE;F<&6G
M'WXG%=5>R78:Q5%O6%_8W!Q&VSOG]0N;J2,V/:O@6-\6?[O:P $&;D7'[!7N
MO)*B;SLAUJB&ZCUDVTB,"*''@*V9PU4 9P=L.9W=B<;%7>DM#1R?9W0/ /N4
M82+)[D\50,/TB(6C 6DPH)7)\\U;SL!,*@A'"B;X%BYG@V1\6(9L QHMX]\4
M0*8)Q2N_ .1M9L9E2Z*UGIT9#-?K(8.Q +[RHD&*2M\_S; UU1I.CPV!?GW!
M,*(=W$:0.C[9PJERPLP3<B1O1$ MI$&<OWFJY8?.DUB$=^ .G<Q%@/EA#\KD
M[T#BORS#:P>ME,'9== F*0SWE]2)V$O"WQ8G%'*,0[>R<%WZ,E<4KH<$&/P6
MY*2S+[U0HDENW3!J4A> ZSO2(T+\K AYNEG*5WYWE%=#. WC)*ZD,8C;P([M
M%0M[0U*AP^M^0X[R3!J6(=Z0ALK8-SGP8P:).?$S_!_>/2^.+Q+3Q>"_ DRS
M']A[:?\+J:5(X%&MK.3Z*5QYG[^Y/(T=I.4Y7RZILE3'R$R@0]DFT1G*)-GJ
MR<M(DG>+C.C7$!SB0L4]V"GS/^B.49-Q<]8JK-%EW[#6)@G2FT3SE;B_Z>S;
MRFJ?BFFP0P?C5?<T-?UP0WF7@O>:%WS=M;"G'?*USA8X(:>8(+HKJG_54D.^
M;VQUM88:(&S5)%+ET 6?/Q+(IONX@=,<X8]WLY0\]<I&A^D)XP>'Y!YCAH(T
MB:';K,@G)))E;[%(D"<IHT]H[C\:+K.V8>M"WC(-X)W$L+HZ+,=VY)#(SF,F
M;&K4LH*9"XZH1P<[-P8&!HR&P];F9_#%!34X0H4'\7[)KF,[#U:U]%"M,*@[
M-&.6$=HY46;)W%I*5S8\@"X(U,H+Z@TCNB3^CHIEJ&J7OU*N1V\P1O5+V;_)
M8BLPM@L2VZ'/8;AX]7Q?@2RM1_%>*_K\X7VFO-V-IY.Y24$:#!%4WUA<>FJY
M&K<36.&F\=/15U#5;:<C,B=-R0J;GHX)6:5'S*=CK?*#,:PB&>LOG/7F=UE-
M[*@@9C<(=933GGI5,5IC@DYX*32O%$J-T,"JI8F"TOW]^<.];1"I%;,""K5N
M!ZXQ&N^JG<*!RAW$XU FE>KRL=NS)JJ3:G.(BM[+B1&9&J3O+^A9 JQ>JJFK
M=MIM](8N=0MIKSQQB<E8*L]!C4V-E,!5T#>!*;+KG(C>+8222@&U=7*;1L"6
MFKF/ 22:A5<M7;#5'6LZYR=NJGUPK[X&K9G;)@'*\TVC9JY,GP@&B.# X$9G
M. WH12\/IHA)3APPRNQ4.UC+(OK?N_#,!L?*C#E[/V-N2.KHH +Z>$G+8T.W
M%WVYZW@ED3%]6-<(=;J1[P:4$.G_?HJC1'HWL4_E]Q+[:G<J?._2P&%:JSG<
M5[?KB^56RJAL,%E_=IW=MXJ<HT%/V_WGJETJEEL:<;<[GE<[NWN"#7[-#*;Q
M$&9>T^<) PPIZ0_4+1-Y?XC(*BZ1,C0;FI6IXQRYH+$;>?S^$.Y?-24_K"E5
M7\'R1-L1R5-D+;ZC(#E;M_#!/J-0"P4N@O^2.KZW].@BJQX#V4;:'*>0G1K+
M@8R2"76ERQW?H%2 % @)'G%DGZ49*9B:D8(KLF.+9'RQ!;;Q7<4(:M+;7DRB
MK4DS.*,TKDSTC+>V42_A$V^5>>3'-'JAS?<WRN;X"_AF/E#30,S>8OQMMJ,B
M[YGMK);7II'JA;S&T(R(K//UQ@^WE&:1'E5_ 07$VI_#8DV;,Q3H,B)'D: B
MIU2S%7+:BBECK]N8#;RM_>(%WCI=UY[(5'_';&-K*6% DW5H"2R4(LK;5;4V
M)XG+;8AL[QB5J]^3N9C<SMSCSDJR,I4B'UU#AB5+\&A 7^K0W'[#/6K=.J:8
M((G$*]Z+?]R%5K:!6NM1?"4[??YP[OH2'>Z3+BH? TG+@-I%)=6B<!W'#'&#
MH2J^Z@2+B*Z\YHJH79Y&W7]TYQ(=KGU\3(X::_>2>;!@#5;FL@0/)*;A4JB:
M.CFL0\4>JM^[QNEI"*.'?(GL[36FC.MO@O"O?4FF# *;D9CS,FTP6'=]=)P7
M3*F)O MX+0#>@'_S]6'-%48&R$" 6(WMC>F,NUAPWRK'OW4\MFX^=39>XOBU
M6V^]9]"NNCH<H3QW"P($*!Q=!H33"'U+T-E)$Q7G7NW!&;=B=VX: NY2_1#E
MCJ?A$0,UNUOY,? NX@3R"C4SBTO4Z.BCIN:UW@!9DF_39:_)E!]N-I2/070T
M9)[-9MX'"#5CFR9G1Q3"QTW64AE89+W+4J.2VY90M%E[79*):J!]]-BAE@BU
MO39F(H<,7BL)OQTW"RAVVHYG1^.W,6BS(]/3Q3ZUQ<,IL3%%^OUK9:F1O2;&
MDNU?FRDDDO?G%26^#4<C]V.W$< =>9ZT&,"UNMJ)$A>#E@]^<-XN%XRNMX0M
M/9O^11G TABVM\>7%&[A!'7=+XH+@\O4/@DB:%B"%FU=5"L.ZPS+P)%W(N?=
M>; X8RN*&OS4MS,1<U=+V4C G>B9L*X)]&T13AIEKXNU4ZM]LM)<WU,HZ<16
MGR_LVQ6]HVN'K5:S'Q]HM#Y6O$([=V.V@)<^WZCM6SF0+"=+,KJD("Q:$"!M
M"42QBFLN!=9QQ&V)),T3*)^EHFH#0YT"X)V[&31^M('OH4-'DY \47Z6FU?_
M8,0MPWA?W76*DVP;=$LQ_O :&H X]#(FPB6N1P<XHWW ^)8TAX%W><#[W\)_
MW@;4#?UPM3WWJ9M$X"2QHM'V,>)?*B.#]9[#W*IWX@P#PQVA#_N4/F2D#%V+
M&Q>HX_5WJYR'=8G=29WR975WZ$X0>'!/HQ?/I;OJ$G+]B>N0)V)F"[Q7)UK$
M_(12_AT*4UR'R=]H<E>4C5.\9H:C9RK083!-H-R/@9NC)V"'9',SF4<11&?"
MWS-2,$8X9S,"G+!O$[*E"=DQ8VF4V>#*5P5A#(O#T8-BK\(XOF":/0T#]E)/
MV>2:O>##(#ZARS"B1>0=C2_81V^ENI=%=&@F&!8C"^[,G0=TO@/Z7Q/ *=FQ
M0'8\L(4B,"$%@(+G0<:(9?:%UVA]!"<:'F/ND\)@!8<19_1)&;$I-T'O<&KH
MH;8O4-0P81T2Z-$R@-4)6]EQJ+0[C=O*+5MM!LT%XE6M#3J@U'&!0<E><%+6
MN9T5N5N4T. YH1R+,1?.>:'-1O_-<BOT(K6>*NHR+N_2,G@H1*TLY!HT/&;9
M7;8FA!P%P8([.]VRE:%P\N:U6+/ZV?I!:+V[0Q?H1<J!CR+ZAAR1?'5.,HH$
MRMO:-G]A554IY6MBS,?=<93*J<U=-TKW(MK5>XOV1PWL(K3Y0SFYBUX)%07
M;8-I%S74+/*[C=.HX13_G<:)J( :YFED(.?Z;F?R$-95%2N.O'<)9=HRI ]!
M"A^\,9S\N)B/@B^X38ERSGB^?T_LE=GW05[J;I.Q!SFYP^)FQMIB=T.JO1I@
M,C#NIJ]LV=T8>W0T4*7+@0T)2)*E'[[&XA#J (RCOZ(T*T):".P](U6$A#TX
M;R)A')R5U9\UZ[QZ$+T;?=O@I41Y]3MOY"G;%SA)$GE/:0))1^"MXFPV[(7C
M%>DN=&M/3OXFP:NT\>5A"#ECNB;"'@@8B>@S;(Q>Z.ZEQR:'FR7CO;ZL<\O[
MPT#':/=%8[+AX]%<F8U\??;.A[L/R^S%G-8JWHQF(3&VE5P&"66H2^;!XLR#
MUV6P$/PW68#Z(2/H;N4)Y0^>]<AS*7@9I0R[-H*V51FU@-0;H8&B".ZIFT9>
MLCU_<Y_!R^#:J<!)V0P30]!$%^5 D?5+\HX)]&P)6-H$E^,'6C5N2_C 659'
M!)(BL\G354>1=NYFT/"!!KZ'#1_("?,TTC.2T;8$HEC5=0H@:!OSR2!>^,=J
M(7G7VBQ@*UP8Q671N]7(J^B@&6#U0X%*)K9Q@NV]X]/X,CA/HW!35PVDMADR
M]9>2+C*+"O1+>,=L)45$U^82=*&X[NAXO X#FCC1%C)*P'P*:2_KY3LL#^0F
M-9:R8S6C;LQDP[6'"B*+S3Q-GL,(G"8? Z9%*5,7O^[-<WCM"I%<A:\T$G]Y
M:T^UG!B4)#I]\0CZ&-316# TRZOA4+ED#GMY $=9_1S.DR7F,Z;Z*VF3Q\+C
MV&;]5)9) LK)=M<DPQ%WHKYPO.BOCI]"SIMT+<YES]\VU&7S;E.(\8 $C9CT
MH+HP9= R?[)5P]5KK>&+4 +@DW!&B<0I3 &"5QL#G8<?E%HS'QZAD[^[JQ*=
ME"42R2YNEN4YKM,+&T-GF+>T <DGMN3K(H^L8)#L.+31?H<8 ;VWLRGP35\5
MCQ\E2W>!:H\\K:<'JG.GXA+EV*Q=HDW<A$GD+8V2ZZ@\S:)KC6,\/8"+K\^%
M?V7F"3M/+BC3ON-#"=@4\G3MGJ\F/!J&QD#&@)-X#),A3D(R9DC!3?F9PS(B
MG-(U3<T SL9,)2UR-RJ85EA8RT/H=-):/*&.0K/,FQ*:,R+D74;&-L\(/:54
MLDKKC]2(H"M=!>6KK#//3]FWNBG-N_:"A65/KG%.$+QO<Z4T1I"E,6]HY4*T
MLEN1J,Y(QH]EIMA3>67;Q.!W>F.M\,<V3Y[;S505?0QDJ,T<8\RT(ZHYW>&-
M&2\OZ^\IC&FK,3N9V'%6F>&I14"+C+9929HFJX'C@4N\\ML"98%7^5=,>=<:
M*JC#+KCLC1//93N,+]2!@$>+8I05 LNE7E5ZG:30*QQMA0%L[F^6BO5>QX*O
MW7LT5_BUMS0H0$H%8'<,P*<#VB@8T*&Z*"P.$I/819'C/=L+=32"EL?-(5Z/
M3U/P+JC96GJ]JV+4F.TP@F/F%G$B2)\<W]*(+Q]N0]]SMVVX;'L*G7M$CRO4
M^6-& IQ?Q?+8,N1IZJ"2I*3#T(QZXKY?@4@_/XG.D_C3<6WN\%E'?D6.R.G]
M)3AABXA"?K&ZBJBX5KUEO#Y#3O<=$Y8ALX.VJH?5W09SY&J&GKB6F@<+D65N
M10/7HQW VK$3$Q4/N_.,AO"O <$[TCPV:H^X98#MIZ:ZTH@]Q]:28-8L*Z)8
M@+"70N0$L2^<$(H[6;:05F#;1,]#AK-VE X?S[K'1[XW$[D\B^2<)&>'2/Q(
M]_\SV,Q99BX&E=PE_+4/ANS.>GO^ED0.&STO<*+M94+7\373/GN2C01C<)6'
M739Z$ Q#<8*\N5VU@3'0S!BSM+D\[P\D/"/L8Y$8"'@R6N#."HVTU,M#J^5
M4@IW5:V!G,.];&^@F.IYNO!8/U>A6Y?QI:X%)I):00V5VDMT2?(^+4%D@[1R
MY'23<@>NQ3</@M3Q[^@FC,KO%64S$Y7XZNBB? [R0GRB8R)ZM@@&38+75>%3
M:GP@0&3'C!=L:^+X4%E'79]1V10#C#;Z)ARG1.>B>I*%E1K;5"##1&L,^D<1
M7],P<-C*0%GUJ-0 $SE<3PMUZI#U:"A(N#^#'<.#<T*'%?Q;KQXY[+<!+(AZ
M77[XU #0O9]1U;=JZ&# *?HS54FK)W-="V9Q,H<%RSK5[!6_4@%D^L "<#&A
M\V !"T)?VC(T;OSU>QDH.*"-ZW$B9C@7_(B9\U&J@7-(?O]M^M3T[->"0?]I
M6"I^<4=7J0_/;><;."QP?#CYOHW"1>HFIS3:U1RO+6V"[0TSR1N0 @/O'4V>
M)Y03);]PUIO?P:D+$";N'F5#KX^1Q,9G2>FLH!EQN O4_JMJP?YKTSO*@/[E
M5YHIZQDS1['+\VG%>6T)-G=1[P5\72"_9;;+4;SW])Y%YQ?NPB'J#"LCQ%]>
MXLI(HC5CNX-$Q^UI<OD:CY0-"3E)5N0NBJKD/.Z,U1&-\"3U?'  9\SE?UZN
M8=;@+B9Q8QTIO6>Q1MB)0XP1YKUS?!8?9%J6H;*39LJH[#YX$SG#PJJU=(-R
MQOX!-WS&>W85W-E'MD^O)EUG$5*9\ZB5K_AVFZ49R3GAEF!G[5!#NFQRPL5"
M9$1[V>?B/MUL?&[&+5GG6Q_#(EZ7+PRD.8WX0SYRMDW2NBHH(['3V$QQ;J7G
M_ZUL;NPD:@"/;_G@R#(XM8FM/!FRQ;M[O7&\"(!\$YUY\2:,'?]F"45X^=Y5
M^/IJ0JM/5VC8(?C'0)+76?9Y_5Q!PS9<(O12P2QV8,>LWTT9-W0_KW/<AMR6
MA] UOK5XPH<G_)(<B?S<MH%13P&52N#ZHS)]B;H++W "=Z_FF )L'3H8J"1=
M Z^XJ_ZL6..[%+(*>L'79)E3TJM&9X=\C8=F>"&G,,#NBM(LM=>&VC'/*" M
M\AW=9$%8"[8GO..5D1=G_*I<U&;B.515YQ$=>D"?/73G%N5V%:[789!5NBN(
M\O,$43[:MA0Y/?13.3OH.9SC1JZ5XRD:3WC5[0W$HS5S@D1?)=S&,KRURE\3
M4Z8Q%"-BZ8[&E G\#)7 Z OUPPVLV+/4"@H\-3^#Q9061[B[>D& SV.+'0G+
ML*6EAS*^](=FS-W5KJ([XXM/L,^AS[09G_\C55<\:GT,O</2Y MUK@G+0N+O
M*''4Q1*M7SAL:_P[0CE)@\M<D](U+F[-B3C)+E-3395]9A=TCKV@U3&O 0QJ
M2!,:PV0&-Y)#,0I],[ '^&R5[G@!7>0)4>:NFZ[!A8JMW.G2<Y5IA34>Q*]I
M='G#+6P$%4(S,I:A2E\+U65-IR&:OH@C1((VNKZU/S=08<<J9]@+#9+0:$U\
MH%*L FR;T+25H5GK43%.X_I=1BE=2,N05E]+17L#_I7-G"!]*J%S0L46)B;O
M KBU^-24_G 2 =J<)CM+,9&'9+,F:KPB-5 U4,3K>9 P4YPO%FR,X]LP9@/P
MG][F-%S4Q;PV-,9$O;;S@(J:X;V3K/L9$00(HT" A"7HT=.#'/RJ.1@#X>8A
M<L!1\GZ[?@K]&JCL_XY!1RTEU%Y(=$A$CQ:-?ZVD\I"KE3KH['!'5Y!VSPD2
MN>I]95XH-<//"/5T#<P%NXX)]&P1!)H$KQI_@\;[Q[+=T37;)S"804!]?+,\
M?W/]%([:'^_E[(MWD$X=\D]=T+4+.=0O/#]^]NBI[VWNMW%"UZ6Q-=LW)L[-
MN(2X#6?&#-D"-^".3'-^R./[^_=D(>>\C#A3//E0QI8X XE)QAT!]HC@SU"
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
MQ<:PP6N\Y0',2E6/%[2KZ7?D2"I:121:AM:@YN08P@-<+?YA;0+UM"RO+SM
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
MK*C5L"S#%?OKCS_+OV'_ 8__/_[L_P%02P,$%     @ N7YY5+.X.>+Y-0
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
MR*J:'4168ZCC+3)@]U**CKNH51Z6!Q3,E#D(HPC(4'>'9D?(V06[N,B=+:<
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
MG@881Q=0#D(WBB)I3#6*&GQ+--.2\%DP=R'05!P*-!N0*=P5IU/UV].>MUJ
M3!,F*\D5)TG1%6G4,HNU)HZ.B??4I1_9J[+P:N"6DE;E9HSAJNH :4)1]18^
M[NTU< (7S)9?*46O?>!,G@"V5N VV"P IJVQ4N0A/&@VZ+)2-4DU=LV:*38,
M;80/W_?Y^V!++<_&1 GYE58;*O2G N2E60=KM34L'ZJ:,Q,'5 \S/=CQ[ +X
M%G1GRRG ]!?OW'(M2NOW:P"2$4H."B:?)%>PI,[:MDF$;0LU!.>UK<-(;ZW2
M6P(X,Q6Y058XX8HS/WJK _SJ)%>]19.IK@9^)A+>_G!P-$7WAV,Y@23Z4YM
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
M1?0%DZ]1UPL=GW<>L)&+5KM+%]@^9N[U"N#=(PX_%!.R4CV]T5;4O>OED%M
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
M6.3#U^W6V/;N]B0D GJF:EC:V+:T0%*Z9Q-A6C_)B^F\%442<U;^QO.WL)K
MW'>]P).;/*Z]Z7RS]=:>"\'E>#%W8.0XJTM_._>G,)FOEP^3>"/O7V4A2%(]
M'V88L93QP0>]6<,013<[SDH:*ZUCTJR.?8TADOJ2[P*"@=AC(#1B/&>\$5ZM
M5HX3S+&4IG3!&N]((5KG1B"!L_I;GZE@FJ9B]/NF^1D^2N>$\0PVRMDIL 0N
M!=K#$L<D0FG;"J(5=>UF)0=4QK+Z',O0 F()',,2\6@/O4]=J$7>!8E:,ZP)
MLY0<[R2$RK8A$K:X9U,\$;$+ASV1P&TLE.=8-DB=G=B3 A"EI?RF]=YG8NC*
MQ5.9)(PW!"N)!YC&DIZ+(YR%4G.FT61AJ"^6Q+-K^5@Y_Q_?FJRD[EO<D/$8
M<R5D0K!L8.1WT-0$6IB.K14:S%!%"883E.7#9JXA6EE:#?.:SO@[VHMA-B@5
ML$ W&!PBJFY3T7_".-,CTL.1\/ 9ZIM*@C*25H,_0G;LQ_I]E+A6SUIIVLFK
M'?\4OP%02P,$%     @ N7YY5%C7@Q>' @  70<   \   !U=&UD7V5X,C-Z
M,BYH=&WM5=]OVC 0?M]?<7M96RF!D&PKM!0)D@!9(41 V_W0'DQBB"5B1XY3
MQG^_,PE3-6F=BJH][<4_=+[OOK._.W?'R^FD]Z;[UC0ADB(I8YK :@^^-^K/
MBY(I"H58JQV1U(!^\DBX/N"*+"\5E1!P+AZ)8H(7!F[BAH&V?"_9)E5P[EZ
M;5EMT[9L&[Y%T>?;3NA-G$]?'^Y'[8XW'#]\;\!NMVO09$/D(5HC%AF8)C(:
M^WT/IV8]#V;>%YR\X+[7C8!LV8;?5&$*M=_2F[.UX.JJ9>4*EBRC!81T!W.1
M$7Z=$;EA_,HZZ[WCJR*_/FWL#GK^CY2MF +;:=C=YJ#7;49(Z<@FIEQ?R0OH
M(*0["Q=^N(39$(+0\R,?!]S._5&P6/ISWX/H;C )7.B[[NPN7 ;A"(;!?/H:
MX>N\7A7E!8YWBJ0PI0F+R;;6GJI5= +:R30>*,0H7\P;E "54F \%C(7\J!K
M70R2KJFDJ'PTP9QN6*%JXT(113/M&XJB 8[CF"W[LO/^HU&M.QW'N82*VSF>
M'PJ9P<)L7QA >%*=:=O691N>6)T+$&MXYGJT69022)F@&B5%KJJ !*DD8'^
M*9%Q:H"N.@,05N>T9AQ+ER%4<:1<:)@AS6*L;1A)4>8P81G68&+ +F5Q^@N9
MY#DE4B>O4H9;SDL$JJQPY-VRS-N_\5X+>6"S1[@"*$^0L-,"C\8T6Z'LD'+K
M<#&XL/ZI"OX[/N,8XCMCB4"_*$JI?X"C4$[ <E,BL</@P_?C6)1<$:U$_>:Z
MEDHEY![Z6M="GH ^IR1A?/-'3W=4.3]MPL,9-MPG)\TUR=AV?_5;%&Q87.<,
MMQ@@$5FWJ1WK)MS4_Q).]2_5K'[5GU!+ P04    " "Y?GE4PQ'D4O &  ";
M&P  #P   '5T;61?97@S,7HQ+FAT;=U9;6_;-A#^OE_!8<": +)C.\O6)5D
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
MBKFBB-]A4D30B0!N>3) \*5.EBR'_PDZ!*DDV6"C#(MYL#3@%SD?!"11)!
M(!2BYFNPLR?D9L;B1"W,"BU:3*6QFF,A3@^]W; RV JZ61FS9>V?!=>P"(9^
MW0CXX6 $C'?<=63*Z)8EA-)&Q;'$K7-AGZ$O<L&"\^4D$>14)H"022+-C,1)
M+ 5E$&W0?21-F"A38!Z1B5:)CUJN%3HK/#;L&$&*!*+N(]&[#V<\FPK609Z.
MB@02KMB?'HL3-[5Q&OD[?RNIJF<>+:2?43)O@<B'DFPY>*%X9Z$8"]$^'T(+
M$E2 SEX:)#LA;[6J+0KYH;C9K]3KPF:],K15'AZ1,.B<X"Y'LY^.94 5(.2%
M.7P*4?%$L/5*GMQ5@4:M0*;.I7'Y#RF1.3W4UFR88YM]M$BX"W3)[IM@!24S
MT: $B\ 6>$9&W#I#)T9&DFM)&Y"^!CD^S$A38:@NN+PPKH@XME!&P" +/].D
M'+PAPR+AQ!W8EC-B4U\PPU>K[2*+7Q-!@N AS!?1<]GFW(I[6Y'P6[:.X5Z,
M_'WQ-MF+MX,S^Q'L#N>$@]$'Q,YE1*#B1F6<R(\; )):$D(:U]$JZL"AY!.9
M2+NDDK1O6<H!!Q 7>P_?'=&MEL9Q['VYH;S0<#=<2B4T#)6.G &NN9F*#)4Q
M 00Q(G+"-HF@<?,P0P[('#3WXF7M!1 4E@@2<YX4+JW)O2*.T5;(.1QC]K0'
MWW_WJMGX][DYA*;\[<..877. & P$11C?%\R487]N 6'$"E?2PMJNN)/]ZML
MLFKG7 Z4GH ]YT[Y/S#HT8HVO#\?QX7.+661=R-[@_\$LJ#2H\*PT.3]+9[?
MHS55QN(YO72 +D,'SK*]9,<?F1(#1DCC!]*EX6ASA3MR9;MGW!-OU8R;=5$D
M G"P$Y%C1N>/DK66.%A]$$EY_GH@'WRVBQS4O@1@J$?]J]OHTV>VT6NW?:*9
M=J\OUM@--OE+=+*-GTTJ$P*>4!8?-4)KTSB:(:NT65<B]P J4YS?K7!0VS-M
MHE#G:"R2L,TI. ;"P$N&> ]7:L=6:2'^+"1,=RE09*$[LYW\D_ME.M12)R$1
M9CHCT&DCE )Q*2O(NF]="/Z!2H*OY*XHN![$O4)9'7"?%.VRQ?0GM#W9SB-,
M-&*=[!]%1MFY8 I"C 8C\'7)H"B9(H4#Y/^$VTQ)LGM?!7P6$>PTM*U_?;7M
M+)6?6".S @1'.#) >-U[J1('@6=OF<U5,A=$X1F?EJ_7=,D?(LT3M1087<R4
M)PV^@S*@XHO4M^K+O^[HP@]G[!W70&[S-&#TZ>0EUW]^@;D>W(Y7$R;($J$K
M$V6M2L\:^3USITOV7=W]'5WLO%O^V/^:J3UZFW_0Q':-C'G.AX>'RSU#Q= ?
M*X"CZS6B!K[,>6TU^H:%2_E%J^:_P/T?4$L#!!0    ( +E^>53PPX@;4P0
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
M>:2N;O\"? 502P$"% ,4    " "Y?GE4,2ERPPBX 0 P?!  $0
M    @ $     =71M9"TR,#(Q,3(S,2YH=&U02P$"% ,4    " "Y?GE4>K##
M]Y86  "960$ $0              @ $WN $ =71M9"TR,#(Q,3(S,2YX<V10
M2P$"% ,4    " "Y?GE4"*E-\BD0  ">^   %0              @ '\S@$
M=71M9"TR,#(Q,3(S,5]C86PN>&UL4$L! A0#%     @ N7YY5)R>]"&T&
M_I\! !4              ( !6-\! '5T;60M,C R,3$R,S%?9&5F+GAM;%!+
M 0(4 Q0    ( +E^>51ARO( LU$  ,H9!  5              "  3_X 0!U
M=&UD+3(P,C$Q,C,Q7VQA8BYX;6Q02P$"% ,4    " "Y?GE4L[@YXODU  !3
M^ , %0              @ $E2@( =71M9"TR,#(Q,3(S,5]P<F4N>&UL4$L!
M A0#%     @ N7YY5.7C6_0G!0  @2(   \              ( !48 " '5T
M;61?97@Q,'HU+FAT;5!+ 0(4 Q0    ( +E^>50R-A">S@(   H4   -
M          "  :6% @!U=&UD7V5X,C$N:'1M4$L! A0#%     @ N7YY5-XQ
M?#E_ @  ,08   \              ( !GH@" '5T;61?97@R,WHQ+FAT;5!+
M 0(4 Q0    ( +E^>518UX,7AP(  %T'   /              "  4J+ @!U
M=&UD7V5X,C-Z,BYH=&U02P$"% ,4    " "Y?GE4PQ'D4O &  ";&P  #P
M            @ '^C0( =71M9%]E>#,Q>C$N:'1M4$L! A0#%     @ N7YY
M5-22X.+U!@  B1L   \              ( !&Y4" '5T;61?97@S,7HR+FAT
M;5!+ 0(4 Q0    ( +E^>53PPX@;4P0  "$,   /              "  3V<
M @!U=&UD7V5X,S)Z,2YH=&U02P$"% ,4    " "Y?GE4+J"_S#H$   *#
M#P              @ &]H ( =71M9%]E>#,R>C(N:'1M4$L%!@     .  X
*< ,  "2E @    $!

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